Skip to content
Snippets Groups Projects
Commit 8dd29e18 authored by Manos Koukoutos's avatar Manos Koukoutos
Browse files

Finish printers

parent 252fed0b
No related branches found
No related tags found
No related merge requests found
...@@ -7,6 +7,10 @@ import utils._ ...@@ -7,6 +7,10 @@ import utils._
import org.apache.commons.lang3.StringEscapeUtils import org.apache.commons.lang3.StringEscapeUtils
import scala.language.implicitConversions import scala.language.implicitConversions
object optPrintPositions extends InoxFlagOptionDef("printPositions", "Attach positions to trees when printing", false)
object optPrintUniqueIds extends InoxFlagOptionDef("printIds", "Always print unique ids", false)
object optPrintTypes extends InoxFlagOptionDef("printPositions", "Attach types to trees when printing", false)
trait Printers { self: Trees => trait Printers { self: Trees =>
case class PrinterContext( case class PrinterContext(
...@@ -32,8 +36,18 @@ trait Printers { self: Trees => ...@@ -32,8 +36,18 @@ trait Printers { self: Trees =>
} }
object PrinterOptions { object PrinterOptions {
def fromContext(ctx: InoxContext): PrinterOptions = ??? def fromContext(ctx: InoxContext): PrinterOptions = {
def fromSymbols(s: Symbols, ctx: InoxContext): PrinterOptions = ??? PrinterOptions(
baseIndent = 0,
printPositions = ctx.options.findOptionOrDefault(optPrintPositions),
printUniqueIds = ctx.options.findOptionOrDefault(optPrintUniqueIds),
printTypes = ctx.options.findOptionOrDefault(optPrintTypes),
symbols = None
)
}
def fromSymbols(s: Symbols, ctx: InoxContext): PrinterOptions = {
fromContext(ctx).copy(symbols = Some(s))
}
} }
trait Printable { trait Printable {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment