diff options
| author | Jack Koenig | 2018-06-15 15:27:30 -0700 |
|---|---|---|
| committer | GitHub | 2018-06-15 15:27:30 -0700 |
| commit | 9b6ff229538070b2b9be71bc00be4f91c5ee2b01 (patch) | |
| tree | 2031d78ef4d1fa702d0b5f2c85ded4c2c0298103 /src/main/scala/firrtl/Visitor.scala | |
| parent | 9fff25ab44ab31292acecdf076bf5f2c9704e68b (diff) | |
Improve Parser and Visitor (#819)
* Update Parser to use ANTLR CharStreams
This removes some unnecessary object creation in String reading and
manipulation
* Remove two unnecessary traversals from Block construction in Visitor
Diffstat (limited to 'src/main/scala/firrtl/Visitor.scala')
| -rw-r--r-- | src/main/scala/firrtl/Visitor.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/main/scala/firrtl/Visitor.scala b/src/main/scala/firrtl/Visitor.scala index f47d7ee3..7b965bff 100644 --- a/src/main/scala/firrtl/Visitor.scala +++ b/src/main/scala/firrtl/Visitor.scala @@ -144,10 +144,10 @@ class Visitor(infoMode: InfoMode) extends FIRRTLBaseVisitor[FirrtlNode] { } private def visitBlock[FirrtlNode](ctx: FIRRTLParser.ModuleBlockContext): Statement = - Block(ctx.simple_stmt().asScala.map(_.stmt).filter(_ != null).map(visitStmt)) + Block(ctx.simple_stmt().asScala.flatMap(x => Option(x.stmt).map(visitStmt))) private def visitSuite[FirrtlNode](ctx: FIRRTLParser.SuiteContext): Statement = - Block(ctx.simple_stmt().asScala.map(_.stmt).filter(_ != null).map(visitStmt)) + Block(ctx.simple_stmt().asScala.flatMap(x => Option(x.stmt).map(visitStmt))) // Memories are fairly complicated to translate thus have a dedicated method |
