parameters:
	customRulesetUsed: false
	featureToggles:
		missingReturnRule: false
		missingClosureNativeReturnTypehintRule: false
		newStatic: false
	missingClosureNativeReturnCheckObjectTypehint: false

conditionalTags:
	PHPStan\Rules\Classes\NewStaticRule:
		phpstan.rules.rule: %featureToggles.newStatic%
	PHPStan\Rules\Missing\MissingClosureNativeReturnTypehintRule:
		phpstan.rules.rule: %featureToggles.missingClosureNativeReturnTypehintRule%
	PHPStan\Rules\Missing\MissingReturnRule:
		phpstan.rules.rule: %featureToggles.missingReturnRule%

parametersSchema:
	missingClosureNativeReturnCheckObjectTypehint: bool()

rules:
	- PHPStan\Rules\Arrays\DuplicateKeysInLiteralArraysRule
	- PHPStan\Rules\Arrays\OffsetAccessWithoutDimForReadingRule
	- PHPStan\Rules\Classes\ClassConstantDeclarationRule
	- PHPStan\Rules\Classes\ClassConstantRule
	- PHPStan\Rules\Classes\ExistingClassesInClassImplementsRule
	- PHPStan\Rules\Classes\ExistingClassesInInterfaceExtendsRule
	- PHPStan\Rules\Classes\ExistingClassInClassExtendsRule
	- PHPStan\Rules\Classes\ExistingClassInTraitUseRule
	- PHPStan\Rules\Classes\InstantiationRule
	- PHPStan\Rules\Classes\RequireParentConstructCallRule
	- PHPStan\Rules\Classes\UnusedConstructorParametersRule
	- PHPStan\Rules\Functions\CallToFunctionParametersRule
	- PHPStan\Rules\Functions\ExistingClassesInArrowFunctionTypehintsRule
	- PHPStan\Rules\Functions\ExistingClassesInClosureTypehintsRule
	- PHPStan\Rules\Functions\ExistingClassesInTypehintsRule
	- PHPStan\Rules\Functions\InnerFunctionRule
	- PHPStan\Rules\Functions\NonExistentDefinedFunctionRule
	- PHPStan\Rules\Functions\PrintfParametersRule
	- PHPStan\Rules\Functions\UnusedClosureUsesRule
	- PHPStan\Rules\Methods\ExistingClassesInTypehintsRule
	- PHPStan\Rules\Properties\AccessPropertiesInAssignRule
	- PHPStan\Rules\Properties\AccessStaticPropertiesInAssignRule
	- PHPStan\Rules\Variables\ThisVariableRule

services:
	-
		class: PHPStan\Rules\Classes\ExistingClassInInstanceOfRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkClassCaseSensitivity: %checkClassCaseSensitivity%

	-
		class: PHPStan\Rules\Classes\NewStaticRule

	-
		class: PHPStan\Rules\Exceptions\CaughtExceptionExistenceRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkClassCaseSensitivity: %checkClassCaseSensitivity%

	-
		class: PHPStan\Rules\Functions\CallToNonExistentFunctionRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkFunctionNameCase: %checkFunctionNameCase%

	-
		class: PHPStan\Rules\Methods\CallMethodsRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkFunctionNameCase: %checkFunctionNameCase%
			reportMagicMethods: %reportMagicMethods%

	-
		class: PHPStan\Rules\Methods\CallStaticMethodsRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkFunctionNameCase: %checkFunctionNameCase%
			reportMagicMethods: %reportMagicMethods%

	-
		class: PHPStan\Rules\Missing\MissingClosureNativeReturnTypehintRule
		arguments:
			checkObjectTypehint: %missingClosureNativeReturnCheckObjectTypehint%

	-
		class: PHPStan\Rules\Missing\MissingReturnRule
		arguments:
			checkExplicitMixedMissingReturn: %checkExplicitMixedMissingReturn%
			checkPhpDocMissingReturn: %checkPhpDocMissingReturn%

	-
		class: PHPStan\Rules\Namespaces\ExistingNamesInGroupUseRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkFunctionNameCase: %checkFunctionNameCase%

	-
		class: PHPStan\Rules\Namespaces\ExistingNamesInUseRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkFunctionNameCase: %checkFunctionNameCase%

	-
		class: PHPStan\Rules\Operators\InvalidIncDecOperationRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkThisOnly: %checkThisOnly%

	-
		class: PHPStan\Rules\Properties\AccessPropertiesRule
		tags:
			- phpstan.rules.rule
		arguments:
			reportMagicProperties: %reportMagicProperties%

	-
		class: PHPStan\Rules\Properties\AccessStaticPropertiesRule
		tags:
			- phpstan.rules.rule

	-
		class: PHPStan\Rules\Properties\ExistingClassesInPropertiesRule
		tags:
			- phpstan.rules.rule
		arguments:
			checkClassCaseSensitivity: %checkClassCaseSensitivity%
			checkThisOnly: %checkThisOnly%

	-
		class: PHPStan\Rules\Properties\WritingToReadOnlyPropertiesRule
		arguments:
			checkThisOnly: %checkThisOnly%
		tags:
			- phpstan.rules.rule

	-
		class: PHPStan\Rules\Properties\ReadingWriteOnlyPropertiesRule
		arguments:
			checkThisOnly: %checkThisOnly%
		tags:
			- phpstan.rules.rule

	-
		class: PHPStan\Rules\Variables\DefinedVariableRule
		arguments:
			cliArgumentsVariablesRegistered: %cliArgumentsVariablesRegistered%
			checkMaybeUndefinedVariables: %checkMaybeUndefinedVariables%
		tags:
			- phpstan.rules.rule

	-
		class: PHPStan\Rules\Variables\DefinedVariableInAnonymousFunctionUseRule
		arguments:
			checkMaybeUndefinedVariables: %checkMaybeUndefinedVariables%
		tags:
			- phpstan.rules.rule

	-
		class: PHPStan\Rules\Regexp\RegularExpressionPatternRule
		tags:
			- phpstan.rules.rule
