Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: remove requirement for static closures
`SlevomatCodingStandard.Functions.StaticClosure` does not provide a setting to toggle this sniff for only arrow functions or traditional `function` closure syntax. While declaring traditional closures static *might* be a best practice, the PHP RFC introducing the arrow function implementation implies that declaring `static` arrow functions is a micro-optimization in the majority of cases: > For normal closures, [`$this` binding] can be prevented by prefixing them with `static`. For the sake of completeness this is also supported for arrow functions... and: > Static closures are rarely used: They're mainly used to prevent `$this` cycles, which make GC behavior less predictable. Most code need not concern itself with this. <https://wiki.php.net/rfc/arrow_functions_v2#this_binding_and_static_arrow_functions> I would prefer to avoid the addition of `static` for arrow functions, as they are, by design, intended to provide a concise syntax *without* `static`.
- Loading branch information