c

raw.compiler.base

BaseTree

abstract class BaseTree[N <: BaseNode, P <: N, E <: N] extends PrettyPrinter with ExtraRewriters with StrictLogging

Linear Supertypes
StrictLogging, ExtraRewriters, PrettyPrinter, org.bitbucket.inkytonik.kiama.output.PrettyPrinter, PrettyPrinterBase, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BaseTree
  2. StrictLogging
  3. ExtraRewriters
  4. PrettyPrinter
  5. PrettyPrinter
  6. PrettyPrinterBase
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BaseTree(ensureTree: Boolean)(implicit arg0: Manifest[N], arg1: Manifest[P], arg2: Manifest[E], programContext: ProgramContext)

Type Members

  1. type Buffer = Seq[Entry]
    Definition Classes
    PrettyPrinter
  2. class Doc extends DocCont with org.bitbucket.inkytonik.kiama.output.PrettyPrinter.DocOps
    Definition Classes
    PrettyPrinter
  3. type DocCont = (IW) ⇒ (TreeCont) ⇒ Trampoline[TreeCont]
    Definition Classes
    PrettyPrinter
  4. trait DocOps extends AnyRef
    Definition Classes
    PrettyPrinterBase
  5. type Dq = Queue[(PPosition, OutGroup)]
    Definition Classes
    PrettyPrinter
  6. type Effect = (Buffer) ⇒ Buffer
    Definition Classes
    PrettyPrinter
  7. sealed abstract class Entry extends AnyRef
    Definition Classes
    PrettyPrinter
  8. case class Finish extends Entry with Product with Serializable
    Definition Classes
    PrettyPrinter
  9. case class FinishOffset extends Entry with Product with Serializable
    Definition Classes
    PrettyPrinter
  10. type Horizontal = Boolean
    Definition Classes
    PrettyPrinter
  11. type IW = (Indent, Width)
    Definition Classes
    PrettyPrinter
  12. type Out = (Remaining) ⇒ Trampoline[Buffer]
    Definition Classes
    PrettyPrinter
  13. type OutGroup = (Horizontal) ⇒ (Out) ⇒ Trampoline[Out]
    Definition Classes
    PrettyPrinter
  14. type PPosition = Int
    Definition Classes
    PrettyPrinter
  15. type Remaining = Int
    Definition Classes
    PrettyPrinter
  16. case class Start extends Entry with Product with Serializable
    Definition Classes
    PrettyPrinter
  17. case class StartOffset extends Entry with Product with Serializable
    Definition Classes
    PrettyPrinter
  18. case class Text extends Entry with Product with Serializable
    Definition Classes
    PrettyPrinter
  19. type TreeCont = (PPosition, Dq) ⇒ Trampoline[Out]
    Definition Classes
    PrettyPrinter
  20. implicit class extraDocOps extends Doc
    Definition Classes
    PrettyPrinter
  21. implicit class extraStringDocOps extends AnyRef
    Definition Classes
    PrettyPrinter

Abstract Value Members

  1. abstract def analyzer: SemanticAnalyzer[N, P, E]
  2. abstract def originalRoot: P
    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def align(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  5. def ampersand: Doc
    Definition Classes
    PrettyPrinterBase
  6. def angles(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  7. def any(a: Any): Doc
    Definition Classes
    PrettyPrinterBase
  8. def arguments[T](l: Seq[T], elemToDoc: (T) ⇒ Doc, sep: Doc, sepfn: (Seq[Doc], Doc) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  9. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  10. def asterisk: Doc
    Definition Classes
    PrettyPrinterBase
  11. def atsign: Doc
    Definition Classes
    PrettyPrinterBase
  12. def backquote: Doc
    Definition Classes
    PrettyPrinterBase
  13. def backslash: Doc
    Definition Classes
    PrettyPrinterBase
  14. def braces(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  15. def brackets(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  16. def caret: Doc
    Definition Classes
    PrettyPrinterBase
  17. def cat(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  18. implicit def char(c: Char): Doc
    Definition Classes
    PrettyPrinterBase
  19. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  20. def collectNodes[N, CC[X] <: Iterable[X], U](f: ==>[N, U])(implicit arg0: Manifest[N], cbf: Factory[U, CC[U]]): (Any) ⇒ CC[U]

    Only collect nodes of base type N.

    Only collect nodes of base type N. Required to ensure safe collection within the tree (since trees have a base type). (And for general-purposed use, can always set N as Any.)

    Definition Classes
    ExtraRewriters
  21. def colon: Doc
    Definition Classes
    PrettyPrinterBase
  22. def column(f: (Int) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  23. def comma: Doc
    Definition Classes
    PrettyPrinterBase
  24. val defaultIndent: Int
    Definition Classes
    PrettyPrinterBase
  25. val defaultWidth: Int
    Definition Classes
    PrettyPrinterBase
  26. def description: TreeDescription
  27. def dollar: Doc
    Definition Classes
    PrettyPrinterBase
  28. def dot: Doc
    Definition Classes
    PrettyPrinterBase
  29. def dquote: Doc
    Definition Classes
    PrettyPrinterBase
  30. def dquotes(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  31. def emptyDoc: Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  32. def enclose(l: Doc, d: Doc, r: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  33. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  34. def equal: Doc
    Definition Classes
    PrettyPrinterBase
  35. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  36. lazy val errors: List[ErrorMessage]
  37. def exclamation: Doc
    Definition Classes
    PrettyPrinterBase
  38. def fillcat(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  39. def fillsep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  40. def fillsep(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  41. def folddoc(ds: Seq[Doc], f: (Doc, Doc) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  42. def format(n: BaseNode): String
    Definition Classes
    PrettyPrinter
  43. def forwslash: Doc
    Definition Classes
    PrettyPrinterBase
  44. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  45. def group(d: Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  46. def hang(d: Doc, i: Indent): Doc
    Definition Classes
    PrettyPrinterBase
  47. def hash: Doc
    Definition Classes
    PrettyPrinterBase
  48. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  49. def hcat(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  50. def hsep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  51. def hsep(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  52. def ifSet(flag: Boolean, s: Strategy): Strategy
    Definition Classes
    ExtraRewriters
  53. def indent(d: Doc, i: Indent): Doc
    Definition Classes
    PrettyPrinterBase
  54. def insert(len: Int, entry: Entry): Doc
    Definition Classes
    PrettyPrinter
  55. def isBridge(a: Any): Boolean
    Definition Classes
    PrettyPrinterBase
  56. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  57. def isTreeValid: Boolean
    Attributes
    protected
  58. def langle: Doc
    Definition Classes
    PrettyPrinterBase
  59. def layout(d: Doc, w: Width): Layout
    Definition Classes
    PrettyPrinterBase
  60. def lbrace: Doc
    Definition Classes
    PrettyPrinterBase
  61. def lbracket: Doc
    Definition Classes
    PrettyPrinterBase
  62. def leave(c: TreeCont): TreeCont
    Definition Classes
    PrettyPrinter
  63. def line: Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  64. def line(repl: Layout): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  65. def linebreak: Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  66. def link(n: AnyRef, d: Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  67. def linkRange(f: Int, t: Int, d: Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  68. def links(d: Doc, w: Width): Links
    Definition Classes
    PrettyPrinterBase
  69. def list[T](l: List[T], prefix: String, elemToDoc: (T) ⇒ Doc, sep: Doc, sepfn: (Seq[Doc], Doc) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  70. val logger: Logger
    Attributes
    protected
    Definition Classes
    StrictLogging
  71. def lparen: Doc
    Definition Classes
    PrettyPrinterBase
  72. def lsep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  73. def lsep2(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  74. def lterm(ds: Seq[Doc], term: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  75. def messageTooBig(str: String): Boolean
    Attributes
    protected
  76. def minus: Doc
    Definition Classes
    PrettyPrinterBase
  77. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  78. def nest(d: Doc, j: Indent): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  79. def nesting(f: (Int) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  80. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  81. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  82. def output(o: Out, r: Int, entry: Entry): More[Buffer]
    Definition Classes
    PrettyPrinter
  83. def padto(p: Int, d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  84. def padtobreak(p: Int, d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  85. def parens(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  86. def parent: TreeRelation[N]
  87. def percent: Doc
    Definition Classes
    PrettyPrinterBase
  88. def plus: Doc
    Definition Classes
    PrettyPrinterBase
  89. def pretty(d: Doc, w: Width): Document
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  90. lazy val pretty: String
  91. implicit val programContext: ProgramContext
  92. def prune(c1: TreeCont): TreeCont
    Definition Classes
    PrettyPrinter
  93. def question: Doc
    Definition Classes
    PrettyPrinterBase
  94. def rangle: Doc
    Definition Classes
    PrettyPrinterBase
  95. def rbrace: Doc
    Definition Classes
    PrettyPrinterBase
  96. def rbracket: Doc
    Definition Classes
    PrettyPrinterBase
  97. def root: P
  98. def rootType: Option[Type]
  99. def rparen: Doc
    Definition Classes
    PrettyPrinterBase
  100. def scan(l: Width, out: OutGroup)(c: TreeCont): Trampoline[TreeCont]
    Definition Classes
    PrettyPrinter
  101. def semi: Doc
    Definition Classes
    PrettyPrinterBase
  102. def sep(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  103. def seq[T](l: Seq[T], prefix: String, elemToDoc: (T) ⇒ Doc, sep: Doc, sepfn: (Seq[Doc], Doc) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  104. def softbreak: Doc
    Definition Classes
    PrettyPrinterBase
  105. def softline: Doc
    Definition Classes
    PrettyPrinterBase
  106. final lazy val sourceTree: org.bitbucket.inkytonik.kiama.relation.Tree[N, P]
    Attributes
    protected
  107. def space: Doc
    Definition Classes
    PrettyPrinterBase
  108. def spaces(n: Int): Doc
    Definition Classes
    PrettyPrinterBase
  109. def squote: Doc
    Definition Classes
    PrettyPrinterBase
  110. def squotes(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  111. def ssep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  112. def sterm(ds: Seq[Doc], term: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  113. def string(s: String): Doc
    Definition Classes
    PrettyPrinterBase
  114. def surround(d: Doc, b: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  115. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  116. implicit def text(t: String): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  117. def tilde: Doc
    Definition Classes
    PrettyPrinterBase
  118. def tipe(n: E): Type
  119. def toDoc(n: BaseNode): Doc
    Attributes
    protected
    Definition Classes
    PrettyPrinter
  120. def toString(): String
    Definition Classes
    AnyRef → Any
  121. def underscore: Doc
    Definition Classes
    PrettyPrinterBase
  122. lazy val valid: Boolean
  123. def value(v: Any): Doc
    Definition Classes
    PrettyPrinterBase
  124. def vcat(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  125. def verticalbar: Doc
    Definition Classes
    PrettyPrinterBase
  126. def vsep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  127. def vsep(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  128. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  129. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  130. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  131. def width(d: Doc, f: (Int) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from StrictLogging

Inherited from ExtraRewriters

Inherited from PrettyPrinter

Inherited from org.bitbucket.inkytonik.kiama.output.PrettyPrinter

Inherited from PrettyPrinterBase

Inherited from AnyRef

Inherited from Any

Ungrouped