diff options
| author | Jack | 2022-11-11 06:53:04 +0000 |
|---|---|---|
| committer | Jack | 2022-11-11 06:53:04 +0000 |
| commit | 3ce953c81f06519351c48277e3474b5720ec07ff (patch) | |
| tree | ac79dcb80d0528c2ae86ca21da4cf424715ab645 /src/main/scala/chisel3/internal/firrtl | |
| parent | adccde9998c91875e5490cff6d5822ffacc593ed (diff) | |
| parent | c8046636a25474be4c547c6fe9c6d742ea7b1d13 (diff) | |
Merge branch '3.5.x' into 3.5-release
Diffstat (limited to 'src/main/scala/chisel3/internal/firrtl')
| -rw-r--r-- | src/main/scala/chisel3/internal/firrtl/Emitter.scala | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/main/scala/chisel3/internal/firrtl/Emitter.scala b/src/main/scala/chisel3/internal/firrtl/Emitter.scala index bbf43a45..ca8562e8 100644 --- a/src/main/scala/chisel3/internal/firrtl/Emitter.scala +++ b/src/main/scala/chisel3/internal/firrtl/Emitter.scala @@ -11,12 +11,14 @@ private[chisel3] object Emitter { Serializer.serialize(fcircuit) } - def emitLazily(circuit: Circuit): Iterable[String] = { - val result = LazyList(s"circuit ${circuit.name} :\n") - val modules = circuit.components.view.map(Converter.convert) - val moduleStrings = modules.flatMap { m => - Array(Serializer.serialize(m, 1), "\n\n") + def emitLazily(circuit: Circuit): Iterable[String] = new Iterable[String] { + def iterator = { + val prelude = Iterator(s"circuit ${circuit.name} :\n") + val modules = circuit.components.iterator.map(Converter.convert) + val moduleStrings = modules.flatMap { m => + Serializer.lazily(m, 1) ++ Seq("\n\n") + } + prelude ++ moduleStrings } - result ++ moduleStrings } } |
