includes:
	- tests/phpstan/configs/actual-problems.neon
	- tests/phpstan/configs/com-dotnet-magic.neon
	- tests/phpstan/configs/custom-leveldb.neon
	- tests/phpstan/configs/ds-bugs.neon
	- tests/phpstan/configs/gc-hacks.neon
	- tests/phpstan/configs/l7-baseline.neon
	- tests/phpstan/configs/l8-baseline.neon
	- tests/phpstan/configs/php-bugs.neon
	- tests/phpstan/configs/phpstan-bugs.neon
	- tests/phpstan/configs/phpunit-wiring-tests.neon
	- tests/phpstan/configs/pthreads-bugs.neon
	- tests/phpstan/configs/runtime-type-checks.neon
	- vendor/phpstan/phpstan-phpunit/extension.neon
	- vendor/phpstan/phpstan-phpunit/rules.neon
	- vendor/phpstan/phpstan-strict-rules/rules.neon

rules:
	- pocketmine\phpstan\rules\DisallowEnumComparisonRule

parameters:
	level: 8
	autoload_files:
		- tests/phpstan/bootstrap.php
		- src/PocketMine.php
		- build/make-release.php
		- build/server-phar.php
	paths:
		- src
		- tests/phpstan/rules
		- build/make-release.php
		- build/server-phar.php
		- tests/phpunit
	dynamicConstantNames:
		- pocketmine\IS_DEVELOPMENT_BUILD
		- pocketmine\DEBUG
	stubFiles:
		- tests/phpstan/stubs/JsonMapper.stub
		- tests/phpstan/stubs/pthreads.stub
	reportUnmatchedIgnoredErrors: false #no other way to silence platform-specific non-warnings
	staticReflectionClassNamePatterns:
		- "#^COM$#"