=================== Rule set ``@PSR12`` =================== Rules that follow `PSR-12 `_ standard. Rules ----- - `@PSR2 <./PSR2.rst>`_ - `binary_operator_spaces <./../rules/operator/binary_operator_spaces.rst>`_ with config: ``['default' => 'at_least_single_space']`` - `blank_line_after_opening_tag <./../rules/php_tag/blank_line_after_opening_tag.rst>`_ - `blank_line_between_import_groups <./../rules/whitespace/blank_line_between_import_groups.rst>`_ - `blank_lines_before_namespace <./../rules/namespace_notation/blank_lines_before_namespace.rst>`_ - `braces_position <./../rules/basic/braces_position.rst>`_ with config: ``['allow_single_line_empty_anonymous_classes' => true]`` - `class_definition <./../rules/class_notation/class_definition.rst>`_ with config: ``['inline_constructor_arguments' => false, 'space_before_parenthesis' => true]`` - `compact_nullable_type_declaration <./../rules/whitespace/compact_nullable_type_declaration.rst>`_ - `declare_equal_normalize <./../rules/language_construct/declare_equal_normalize.rst>`_ - `lowercase_cast <./../rules/cast_notation/lowercase_cast.rst>`_ - `lowercase_static_reference <./../rules/casing/lowercase_static_reference.rst>`_ - `new_with_parentheses <./../rules/operator/new_with_parentheses.rst>`_ - `no_blank_lines_after_class_opening <./../rules/class_notation/no_blank_lines_after_class_opening.rst>`_ - `no_extra_blank_lines <./../rules/whitespace/no_extra_blank_lines.rst>`_ with config: ``['tokens' => ['use']]`` - `no_leading_import_slash <./../rules/import/no_leading_import_slash.rst>`_ - `no_whitespace_in_blank_line <./../rules/whitespace/no_whitespace_in_blank_line.rst>`_ - `ordered_class_elements <./../rules/class_notation/ordered_class_elements.rst>`_ with config: ``['order' => ['use_trait']]`` - `ordered_imports <./../rules/import/ordered_imports.rst>`_ with config: ``['imports_order' => ['class', 'function', 'const'], 'sort_algorithm' => 'none']`` - `return_type_declaration <./../rules/function_notation/return_type_declaration.rst>`_ - `short_scalar_cast <./../rules/cast_notation/short_scalar_cast.rst>`_ - `single_import_per_statement <./../rules/import/single_import_per_statement.rst>`_ with config: ``['group_to_single_imports' => false]`` - `single_space_around_construct <./../rules/language_construct/single_space_around_construct.rst>`_ with config: ``['constructs_followed_by_a_single_space' => ['abstract', 'as', 'case', 'catch', 'class', 'const_import', 'do', 'else', 'elseif', 'final', 'finally', 'for', 'foreach', 'function', 'function_import', 'if', 'insteadof', 'interface', 'namespace', 'new', 'private', 'protected', 'public', 'static', 'switch', 'trait', 'try', 'use', 'use_lambda', 'while'], 'constructs_preceded_by_a_single_space' => ['as', 'else', 'elseif', 'use_lambda']]`` - `single_trait_insert_per_statement <./../rules/class_notation/single_trait_insert_per_statement.rst>`_ - `ternary_operator_spaces <./../rules/operator/ternary_operator_spaces.rst>`_ - `unary_operator_spaces <./../rules/operator/unary_operator_spaces.rst>`_ with config: ``['only_dec_inc' => true]`` - `visibility_required <./../rules/class_notation/visibility_required.rst>`_