diff --git a/src/Scaffolding/Builders.php b/src/Scaffolding/Builders.php
index dcffbd0112031c8dca88d9dc08fb87ca1ad26bb6..439104dd77cd1623b452e38b20990689f316d9dd 100644
--- a/src/Scaffolding/Builders.php
+++ b/src/Scaffolding/Builders.php
@@ -6,7 +6,10 @@ use Grifart\ClassScaffolder\Definition\ClassDefinition;
 use Grifart\ClassScaffolder\Definition\ClassDefinitionBuilder;
 
 
-final class Builders
+/**
+ * @implements \IteratorAggregate<ClassDefinition>
+ */
+final class Builders implements \IteratorAggregate
 {
 	private function __construct(
 		private ClassDefinitionBuilder $rowClass,
@@ -43,16 +46,11 @@ final class Builders
 	}
 
 
-	/**
-	 * @return ClassDefinition[]
-	 */
-	public function buildAll(): array
+	public function getIterator(): \Traversable
 	{
-		return [
-			$this->rowClass->build(),
-			$this->modificationsClass->build(),
-			$this->tableClass->build(),
-		];
+		yield $this->rowClass->build();
+		yield $this->modificationsClass->build();
+		yield $this->tableClass->build();
 	}
 
 }
diff --git a/src/Scaffolding/Scaffolding.php b/src/Scaffolding/Scaffolding.php
index 08cd2f9fba2b765cd08ad4f763d4fdcb82d4d6ae..b6a83674df17b75ecd47791ce71bfa89988719f4 100644
--- a/src/Scaffolding/Scaffolding.php
+++ b/src/Scaffolding/Scaffolding.php
@@ -27,7 +27,6 @@ final class Scaffolding
 	 * ```php
 	 * return Scaffolding::definitionsForPgTable(...);
 	 * ```
-	 * @return ClassDefinition[]
 	 */
 	public static function definitionsForPgTable(
 		PostgresReflector $pgReflector,
@@ -38,7 +37,7 @@ final class Scaffolding
 		string $modificationsClassName,
 		string $tableClassName,
 		string $primaryKeyClass
-	): array
+	): Builders
 	{
 		return self::buildersForPgTable(
 			$pgReflector,
@@ -49,7 +48,7 @@ final class Scaffolding
 			$modificationsClassName,
 			$tableClassName,
 			$primaryKeyClass,
-		)->buildAll();
+		);
 	}
 
 
@@ -58,7 +57,7 @@ final class Scaffolding
 	 * ```php
 	 * $builders = Scaffolding::buildersForPgTable(...);
 	 * $builders->getRowClass()->decorate(...);
-	 * return $builders->buildAll();
+	 * return $builders;
 	 * ```
 	 */
 	public static function buildersForPgTable(