diff --git a/src/Handlers/Eloquent/Schema/SchemaAggregator.php b/src/Handlers/Eloquent/Schema/SchemaAggregator.php index 58996564..6649dd83 100644 --- a/src/Handlers/Eloquent/Schema/SchemaAggregator.php +++ b/src/Handlers/Eloquent/Schema/SchemaAggregator.php @@ -23,6 +23,12 @@ public function addStatements(array $stmts): void foreach ($stmts as $stmt) { if ($stmt instanceof PhpParser\Node\Stmt\Class_) { $this->addClassStatements($stmt->stmts); + } elseif ( + $stmt instanceof PhpParser\Node\Stmt\Return_ && + $stmt->expr instanceof PhpParser\Node\Expr\New_ && + $stmt->expr->class instanceof PhpParser\Node\Stmt\Class_ + ) { + $this->addClassStatements($stmt->expr->class->stmts); } } }