Skip to content

Instantly share code, notes, and snippets.

@retronym
Created November 13, 2018 04:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save retronym/6d4cfa02b0b170e4a6c3a73db75167cc to your computer and use it in GitHub Desktop.
Save retronym/6d4cfa02b0b170e4a6c3a73db75167cc to your computer and use it in GitHub Desktop.
class Test {
trait C; trait C1 extends C; trait C1A extends C1; trait C1B extends C1; trait C2 extends C; trait C2A extends C2; trait C2B extends C2; trait C12A extends C1A with C2A; class C12B extends C1B with C2B
trait C3 extends C; trait C3A extends C3; trait C3B extends C3; trait C4 extends C; trait C4A extends C4; trait C4B extends C4; trait C34A extends C3A with C4A; class C34B extends C3B with C4B
trait C5 extends C; trait C5A extends C5; trait C5B extends C5; trait C6 extends C; trait C6A extends C6; trait C6B extends C6; trait C56A extends C5A with C6A; class C56B extends C5B with C6B
class D
val x: Map[AnyRef, Seq[Class[_ <: C]]] = {
Map(
"" -> Seq(classOf[C1], classOf[C1A]),
"" -> Seq(classOf[C1], classOf[C1A], classOf[C12B]),
"" -> Seq(classOf[C1], classOf[C1A]),
"" -> Seq(classOf[C1], classOf[C2A]),
"" -> Seq(classOf[C2], classOf[C1], classOf[C1], classOf[C1A], classOf[C1A], classOf[C12B]),
"" -> Seq(classOf[C2], classOf[C1A]),
"" -> Seq(classOf[C1A], classOf[C12B]),
"" -> Seq(classOf[C1], classOf[C1A], classOf[C1A], classOf[C12B]),
"" -> Seq(classOf[C1], classOf[C2A]),
"" -> Seq(classOf[C2], classOf[C12B], classOf[C1A]),
"" -> Seq(classOf[C12B], classOf[C1A]),
"" -> Seq(classOf[C1A], classOf[C12B]),
"" -> Seq(classOf[C1B], classOf[C2], classOf[C1A], classOf[C12B]),
"" -> Seq(classOf[C12A], classOf[C2A]),
"" -> Seq(classOf[C2], classOf[C12B], classOf[C1A]),
"" -> Seq(classOf[C12A]),
"" -> Seq(classOf[C2], classOf[C1], classOf[C12B]),
"" -> Seq(classOf[C3], classOf[C3A]),
"" -> Seq(classOf[C3], classOf[C3A], classOf[C34B]),
"" -> Seq(classOf[C3], classOf[C3A]),
"" -> Seq(classOf[C3], classOf[C4A]),
"" -> Seq(classOf[C4], classOf[C3], classOf[C3], classOf[C3A], classOf[C3A], classOf[C34B]),
"" -> Seq(classOf[C4], classOf[C3A]),
"" -> Seq(classOf[C3A], classOf[C34B]),
"" -> Seq(classOf[C3], classOf[C3A], classOf[C3A], classOf[C34B]),
"" -> Seq(classOf[C3], classOf[C4A]),
"" -> Seq(classOf[C4], classOf[C34B], classOf[C3A]),
"" -> Seq(classOf[C34B], classOf[C3A]),
"" -> Seq(classOf[C3A], classOf[C34B]),
"" -> Seq(classOf[C3B], classOf[C4], classOf[C3A], classOf[C34B]),
"" -> Seq(classOf[C34A], classOf[C4A]),
"" -> Seq(classOf[C4], classOf[C34B], classOf[C3A]),
"" -> Seq(classOf[C34A]),
"" -> Seq(classOf[C4], classOf[C3], classOf[C34B]),
"" -> Seq(classOf[C5], classOf[C5A]),
"" -> Seq(classOf[C5], classOf[C5A], classOf[C56B]),
"" -> Seq(classOf[C5], classOf[C5A]),
"" -> Seq(classOf[C5], classOf[C6A]),
"" -> Seq(classOf[C6], classOf[C5], classOf[C5], classOf[C5A], classOf[C5A], classOf[C56B]),
"" -> Seq(classOf[C6], classOf[C5A]),
"" -> Seq(classOf[C5A], classOf[C56B]),
"" -> Seq(classOf[C5], classOf[C5A], classOf[C5A], classOf[C56B]),
"" -> Seq(classOf[C5], classOf[C6A]),
"" -> Seq(classOf[C6], classOf[C56B], classOf[C5A]),
"" -> Seq(classOf[C56B], classOf[C5A]),
"" -> Seq(classOf[C5A], classOf[C56B]),
"" -> Seq(classOf[C5B], classOf[C6], classOf[C5A], classOf[C56B]),
"" -> Seq(classOf[C56A], classOf[C6A]),
"" -> Seq(classOf[C6], classOf[C56B], classOf[C5A]),
"" -> Seq(classOf[C56A]),
"" -> Seq(classOf[C6], classOf[C5], classOf[C56B]),
)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment