<?xml version="1.0"?>
<ruleset name="Atomic Smash's Rules">
	<exclude-pattern>*/node_modules/*</exclude-pattern>
	<exclude-pattern>*/vendor/*</exclude-pattern>
	<arg name="extensions" value="php" />
	<arg value="sp"/>
	<arg name="parallel" value="20"/>
	<arg name="cache"/>
	<arg name="report" value="summary"/>
	<ini name="memory_limit" value="256M"/>
	<rule ref="WordPress">
		<exclude name="Generic.Formatting.MultipleStatementAlignment"/>
		<exclude name="WordPress.Arrays.MultipleStatementAlignment"/>
		<exclude name="Squiz.Commenting.FileComment.MissingPackageTag"/>
		<exclude name="WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound"/>
		<exclude name="Squiz.Commenting.InlineComment.InvalidEndChar"/>
	</rule>
	<rule ref="Generic.CodeAnalysis.UnusedFunctionParameter"/>
	<rule ref="Generic.WhiteSpace.DisallowSpaceIndent"/>
	<rule ref="WordPress.Files.FileName">
		<properties>
			<property name="is_theme" value="true"/>
		</properties>
	</rule>
	<rule ref="Squiz.WhiteSpace.SuperfluousWhitespace">
		<properties>
			<property name="ignoreBlankLines" value="true"/>
		</properties>
	</rule>
	<rule ref="Generic.Files.LineEndings">
		<properties>
		<property name="eolChar" value="\n"/>
		</properties>
	</rule>
	<config name="testVersion" value="8.2-"/>
	<rule ref="PHPCompatibilityWP">
		<include-pattern>*\.php$</include-pattern>
	</rule>
	<rule ref="VariableAnalysis"/>
	<rule ref="WordPress.Files.FileName.NotHyphenatedLowercase">
		<exclude-pattern>*/lib/*</exclude-pattern>
		<exclude-pattern>*/classes/*</exclude-pattern>
	</rule>
	<rule ref="WordPress.Files.FileName.InvalidClassFileName">
		<exclude-pattern>*/lib/*</exclude-pattern>
		<exclude-pattern>*/classes/*</exclude-pattern>
	</rule>
	<rule ref="SlevomatCodingStandard.TypeHints.ReturnTypeHint"/>
	<rule ref="SlevomatCodingStandard.TypeHints.PropertyTypeHint"/>
	<rule ref="SlevomatCodingStandard.TypeHints.ParameterTypeHint"/>
	<rule ref="SlevomatCodingStandard.TypeHints.NullableTypeForNullDefaultValue"/>
	<rule ref="SlevomatCodingStandard.TypeHints.DisallowMixedTypeHint"/>
	<rule ref="SlevomatCodingStandard.TypeHints.LongTypeHints"/>
	<rule ref="SlevomatCodingStandard.TypeHints.ParameterTypeHintSpacing"/>
	<rule ref="SlevomatCodingStandard.TypeHints.ReturnTypeHintSpacing"/>
</ruleset>
