fluentMethodCallSkipper = $fluentMethodCallSkipper; $this->fluentChainMethodCallNodeAnalyzer = $fluentChainMethodCallNodeAnalyzer; } public function shouldSkipMethodCallIncludingNew(\PhpParser\Node\Expr\MethodCall $methodCall) : bool { if ($this->fluentMethodCallSkipper->shouldSkipRootMethodCall($methodCall)) { return \true; } $chainRootExpr = $this->fluentChainMethodCallNodeAnalyzer->resolveRootExpr($methodCall); return $chainRootExpr instanceof \PhpParser\Node\Expr\New_; } public function shouldSkipLastCallNotReturnThis(\PhpParser\Node\Expr\MethodCall $methodCall) : bool { return !$this->fluentChainMethodCallNodeAnalyzer->isMethodCallReturnThis($methodCall); } }