diff --git a/src/main/scala/diplomacy/LazyModule.scala b/src/main/scala/diplomacy/LazyModule.scala index a3869468..4c816696 100644 --- a/src/main/scala/diplomacy/LazyModule.scala +++ b/src/main/scala/diplomacy/LazyModule.scala @@ -25,9 +25,10 @@ abstract class LazyModule (m.invoke(p) eq this) }.headOption.map(_.getName) } + lazy val outerName = if (nodes.size != 1) None else nodes(0).gco.flatMap(_.lazyModule.valName) - def moduleName = className + valName.map("_" + _).getOrElse("") - def instanceName = valName.getOrElse(className) + def moduleName = className + valName.orElse(outerName).map("_" + _).getOrElse("") + def instanceName = valName.orElse(outerName).map(_ + "_").getOrElse("") + className def name = valName.getOrElse(className) def line = sourceLine(info)