blob: 377989b5a6b9f35f3deeef7f9563d78acc15d653 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// SPDX-License-Identifier: Apache-2.0
import firrtl.AnnotationSeq
import firrtl.{seqToAnnoSeq, annoSeqToSeq}
import firrtl.options.OptionsView
package object logger {
implicit object LoggerOptionsView extends OptionsView[LoggerOptions] {
def view(options: AnnotationSeq): LoggerOptions = options
.foldLeft(new LoggerOptions()) { (c, x) =>
x match {
case LogLevelAnnotation(logLevel) => c.copy(globalLogLevel = logLevel)
case ClassLogLevelAnnotation(name, level) => c.copy(classLogLevels = c.classLogLevels + (name -> level))
case LogFileAnnotation(f) => c.copy(logFileName = f)
case LogClassNamesAnnotation => c.copy(logClassNames = true)
case _ => c
}
}
}
}
|