Skip to content

Closure variables from use are handled same way as its parameters #61

@jaCUBE

Description

@jaCUBE

When using closure with multiple parameters each on new line, sniffer requires every variable in use to be each on new line too.

Example:

$foo = 1;
$bar = 2;

static function (
	bool $param1,
	bool $param2
) use ($foo, $bar): int {
	return $foo + $bar;
}

…leads to…

ERROR | [x] Multi-line use declarations must define one parameter per line
      |     (Squiz.Functions.MultiLineFunctionDeclaration.UseOneParamPerLine)

Expected behaviour:
This should be fine since each parameter is defined on separate line. To put variables in use each on new line indeed let sniffer to pass; but it leads to worse code readability.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions