Skip to content

Ignore some case for EarlyExit rule #259

Description

@VincentLanglet

I have the following method

public function foo(Collection $collection)
{
     $collection->add($this->bar);
     $collection->add($this->bar);

     if ($collection instanceof BOOM) {
          $collection->add($this->some)
     }
}

which reports an error because I didn't use an early exit.

But changing

     if ($collection instanceof BOOM) {
          $collection->add($this->some)
     }

to

     if (! $collection instanceof BOOM) {
          return;
     }

     $collection->add($this->some)

is taking more lines and not really reducing complexity.

Also, I may change later to

public function foo(Collection $collection)
{
     $collection->add($this->bar);
     $collection->add($this->bar);

     if ($collection instanceof Boom) {
          $collection->add($this->some)
     }

     if ($collection instanceof Please) {
          $collection->add($this->thanks)
     }
}

and so on.

The slevomat Early Exit standard has some configuration available
https://github.com/slevomat/coding-standard/blob/master/doc/control-structures.md#slevomatcodingstandardcontrolstructuresearlyexit-

I would say it's better to use some.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions