From 20890bbd6bef2f33adace433a2d01f89458f0466 Mon Sep 17 00:00:00 2001 From: Jared Barocsi Date: Tue, 13 Apr 2021 17:11:10 -0700 Subject: Add indent parameter to Serializer.serialize() (#2177) Using Utils.indent() gives deprecation warnings to use Serializer instead. However, the Serializer class itself doesn't provide a means to manually indent a FirrtlNode string a certain number of times. The indent variable, previously hardcoded to 0, is now exposed as a second parameter for the modified serialize function, and the old serialize function just calls the modified serialize with indents = 0 for binary compatibility Co-authored-by: Megan Wachs --- src/main/scala/firrtl/ir/Serializer.scala | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/main/scala/firrtl/ir/Serializer.scala b/src/main/scala/firrtl/ir/Serializer.scala index dca902fe..1c2bfc82 100644 --- a/src/main/scala/firrtl/ir/Serializer.scala +++ b/src/main/scala/firrtl/ir/Serializer.scala @@ -10,10 +10,16 @@ object Serializer { val NewLine = '\n' val Indent = " " - /** Converts a `FirrtlNode` into its string representation. */ + /** Converts a `FirrtlNode` into its string representation with + * default indentation. + */ def serialize(node: FirrtlNode): String = { + serialize(node, 0) + } + + /** Converts a `FirrtlNode` into its string representation. */ + def serialize(node: FirrtlNode, indent: Int): String = { val builder = new StringBuilder() - val indent = 0 node match { case n: Info => s(n)(builder, indent) case n: StringLit => s(n)(builder, indent) -- cgit v1.2.3