summaryrefslogtreecommitdiff
path: root/core/src/main/scala/mill/define/Cross.scala
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/main/scala/mill/define/Cross.scala')
-rw-r--r--core/src/main/scala/mill/define/Cross.scala10
1 files changed, 2 insertions, 8 deletions
diff --git a/core/src/main/scala/mill/define/Cross.scala b/core/src/main/scala/mill/define/Cross.scala
index 6120d5df..2975f97b 100644
--- a/core/src/main/scala/mill/define/Cross.scala
+++ b/core/src/main/scala/mill/define/Cross.scala
@@ -44,15 +44,9 @@ object Cross{
*/
class Cross[T](cases: Any*)
(implicit ci: Cross.Factory[T],
- ctx: mill.define.Ctx,
- cmds: Module.Cmds) extends mill.define.Module()(ctx, cmds) {
-
- override def traverse[T](f: Module => Seq[T]): Seq[T] = {
- f(this) ++
- this.reflect[Module].flatMap(f) ++
- items.map(_._2).flatMap{case t: Module => f(t)}
- }
+ ctx: mill.define.Ctx) extends mill.define.Module()(ctx) {
+ override lazy val modules = this.reflectNestedObjects[Module] ++ items.collect{case (k, v: mill.define.Module) => v}
val items = for(c0 <- cases.toList) yield{
val c = c0 match{
case p: Product => p