c

raw.compiler.rql2.source

SourceCommentsPrettyPrinter

class SourceCommentsPrettyPrinter extends SourcePrettyPrinter

Pretty printer which parses and pretty-prints code with comments Mostly uses the function 'withComments' to add comments to parent functions. To format comments properly in lists usages of 'enclosedList' were replaced with listWComments.

Linear Supertypes
SourcePrettyPrinter, ParenPrettyPrinter, Rql2TypeUtils, Keywords, base.source.SourcePrettyPrinter, StrictLogging, base.Keywords, PrettyPrinter, PrettyPrinter, PrettyPrinterBase, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SourceCommentsPrettyPrinter
  2. SourcePrettyPrinter
  3. ParenPrettyPrinter
  4. Rql2TypeUtils
  5. Keywords
  6. SourcePrettyPrinter
  7. StrictLogging
  8. Keywords
  9. PrettyPrinter
  10. PrettyPrinter
  11. PrettyPrinterBase
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SourceCommentsPrettyPrinter(maybeIndent: Option[Int] = None, maybeWidth: Option[Int] = None)

Type Members

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

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. final def addProp(t: Type, p: Rql2TypeProperty): Type
    Definition Classes
    Rql2TypeUtils
  5. final def addProps(t: Type, props: Set[Rql2TypeProperty]): Type
    Definition Classes
    Rql2TypeUtils
  6. def align(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  7. def ampersand: Doc
    Definition Classes
    PrettyPrinterBase
  8. def angles(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  9. def any(a: Any): Doc
    Definition Classes
    PrettyPrinterBase
  10. def args(n: Vector[SourceNode]): Doc
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  11. def args(n: Doc*): Doc
    Definition Classes
    SourcePrettyPrinter
  12. def arguments[T](l: Seq[T], elemToDoc: (T) ⇒ Doc, sep: Doc, sepfn: (Seq[Doc], Doc) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  13. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  14. def asterisk: Doc
    Definition Classes
    PrettyPrinterBase
  15. def atsign: Doc
    Definition Classes
    PrettyPrinterBase
  16. def backquote: Doc
    Definition Classes
    PrettyPrinterBase
  17. def backslash: Doc
    Definition Classes
    PrettyPrinterBase
  18. implicit def baseNodeToDoc(n: BaseNode): Doc
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  19. def braces(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  20. def bracket(outer: PrettyOperatorExpression, inner: PrettyOperatorExpression, side: Side): Doc
    Definition Classes
    ParenPrettyPrinter
  21. def brackets(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  22. def caret: Doc
    Definition Classes
    PrettyPrinterBase
  23. def cat(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  24. implicit def char(c: Char): Doc
    Definition Classes
    PrettyPrinterBase
  25. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  26. def colon: Doc
    Definition Classes
    PrettyPrinterBase
  27. def column(f: (Int) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  28. def comma: Doc
    Definition Classes
    PrettyPrinterBase
  29. val control: Char
  30. val defaultIndent: Int
    Definition Classes
    SourceCommentsPrettyPrinter → PrettyPrinterBase
  31. val defaultWidth: Int
    Definition Classes
    SourceCommentsPrettyPrinter → PrettyPrinterBase
  32. def dollar: Doc
    Definition Classes
    PrettyPrinterBase
  33. def dot: Doc
    Definition Classes
    PrettyPrinterBase
  34. def dquote: Doc
    Definition Classes
    PrettyPrinterBase
  35. def dquoted(s: String): Doc
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  36. def dquotes(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  37. def emptyDoc: Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  38. def enclose(l: Doc, d: Doc, r: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  39. def enclosedList(ls: Seq[Doc], sep: Doc = comma): Doc
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  40. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  41. def equal: Doc
    Definition Classes
    PrettyPrinterBase
  42. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  43. def exclamation: Doc
    Definition Classes
    PrettyPrinterBase
  44. def fillcat(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  45. def fillsep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  46. def fillsep(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  47. def folddoc(ds: Seq[Doc], f: (Doc, Doc) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  48. def forcedLinebreak(): Doc
  49. def format(n: BaseNode): String
  50. def forwslash: Doc
    Definition Classes
    PrettyPrinterBase
  51. def funAppArg(a: FunAppArg): Doc
  52. def funParam(a: FunParam): Doc
  53. def funProto(f: FunProto): Doc
  54. def funProtoWComments(f: FunProto, sep: Doc): Doc
  55. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  56. final def getProps(t: Type): Set[Rql2TypeProperty]
    Definition Classes
    Rql2TypeUtils
  57. def group(d: Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  58. def hang(d: Doc, i: Indent): Doc
    Definition Classes
    PrettyPrinterBase
  59. final def hasTypeConstraint(t: Type): Boolean
    Definition Classes
    Rql2TypeUtils
  60. def hash: Doc
    Definition Classes
    PrettyPrinterBase
  61. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  62. def hcat(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  63. def hsep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  64. def hsep(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  65. def ident(idn: String): String
    Definition Classes
    SourcePrettyPrinter
  66. def idnToDoc(i: CommonIdnNode): Doc
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  67. def indent(d: Doc, i: Indent): Doc
    Definition Classes
    PrettyPrinterBase
  68. final def inferTypeToRql2Type(t: SourceType, makeNullable: Boolean, makeTryable: Boolean): Type
    Definition Classes
    Rql2TypeUtils
  69. def insert(len: Int, entry: Entry): Doc
    Definition Classes
    PrettyPrinter
  70. def internal: Boolean
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  71. def isBridge(a: Any): Boolean
    Definition Classes
    PrettyPrinterBase
  72. def isComparable(t: Type): Boolean
    Definition Classes
    Rql2TypeUtils
  73. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  74. def isReserved(idn: String): Boolean
    Definition Classes
    KeywordsKeywords
  75. def isReservedType(idn: String): Boolean
    Definition Classes
    KeywordsKeywords
  76. final def isTypeConstraint(t: Type): Boolean
    Definition Classes
    Rql2TypeUtils
  77. def lFoldWComment(ls: Seq[(BaseNode, Doc)], sep: Doc): Doc
  78. def langle: Doc
    Definition Classes
    PrettyPrinterBase
  79. def layout(d: Doc, w: Width): Layout
    Definition Classes
    PrettyPrinterBase
  80. def lbrace: Doc
    Definition Classes
    PrettyPrinterBase
  81. def lbracket: Doc
    Definition Classes
    PrettyPrinterBase
  82. def leave(c: TreeCont): TreeCont
    Definition Classes
    PrettyPrinter
  83. def line: Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  84. def line(repl: Layout): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  85. def linebreak: Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  86. def link(n: AnyRef, d: Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  87. def linkRange(f: Int, t: Int, d: Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  88. def links(d: Doc, w: Width): Links
    Definition Classes
    PrettyPrinterBase
  89. def list[T](l: List[T], prefix: String, elemToDoc: (T) ⇒ Doc, sep: Doc, sepfn: (Seq[Doc], Doc) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  90. def listWComments(ls: Seq[(BaseNode, Doc)], sep: Doc = comma): Doc
  91. val logger: Logger
    Attributes
    protected
    Definition Classes
    StrictLogging
  92. def lparen: Doc
    Definition Classes
    PrettyPrinterBase
  93. def lsep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  94. def lsep2(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  95. def lterm(ds: Seq[Doc], term: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  96. def method(name: Doc, n: Doc*): Doc
  97. def minus: Doc
    Definition Classes
    PrettyPrinterBase
  98. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  99. def nest(d: Doc, j: Indent): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  100. def nesting(f: (Int) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  101. def noparens(outer: PrettyOperatorExpression, inner: PrettyOperatorExpression, side: Side): Boolean
    Definition Classes
    ParenPrettyPrinter
  102. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  103. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  104. def output(o: Out, r: Int, entry: Entry): More[Buffer]
    Definition Classes
    PrettyPrinter
  105. def padto(p: Int, d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  106. def padtobreak(p: Int, d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  107. def parens(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  108. def percent: Doc
    Definition Classes
    PrettyPrinterBase
  109. def plus: Doc
    Definition Classes
    PrettyPrinterBase
  110. def pretty(d: Doc, w: Width): Document
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  111. def prettyCode(code: String): Either[(String, Position), String]
  112. def prune(c1: TreeCont): TreeCont
    Definition Classes
    PrettyPrinter
  113. def question: Doc
    Definition Classes
    PrettyPrinterBase
  114. def rangle: Doc
    Definition Classes
    PrettyPrinterBase
  115. def rawTypeToRql2Type(t: RawType): Type
    Definition Classes
    Rql2TypeUtils
  116. def rawValueToRql2Value(v: RawValue, t: RawType): Value
    Definition Classes
    Rql2TypeUtils
  117. def rbrace: Doc
    Definition Classes
    PrettyPrinterBase
  118. def rbracket: Doc
    Definition Classes
    PrettyPrinterBase
  119. def recursiveToDoc(outer: PrettyOperatorExpression, inner: PrettyExpression, side: Side): Doc
    Definition Classes
    ParenPrettyPrinter
  120. final def removeProp(t: Type, p: Rql2TypeProperty): Type
    Definition Classes
    Rql2TypeUtils
  121. final def removeProps(t: Type, props: Set[Rql2TypeProperty]): Type
    Definition Classes
    Rql2TypeUtils
  122. final def resetProps(t: Type, props: Set[Rql2TypeProperty]): Type
    Definition Classes
    Rql2TypeUtils
  123. def rparen: Doc
    Definition Classes
    PrettyPrinterBase
  124. def rql2Exp(e: Rql2Exp): Doc
  125. def rql2LetDecl(d: LetDecl): Doc
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  126. def rql2Node(n: Rql2Node): Doc
  127. def rql2Type(t: Rql2Type): Doc
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  128. def rql2TypeToRawType(t: Type): Option[RawType]
    Definition Classes
    Rql2TypeUtils
  129. def rql2TypeWithProperties(t: Rql2TypeWithProperties): Doc
  130. def scan(l: Width, out: OutGroup)(c: TreeCont): Trampoline[TreeCont]
    Definition Classes
    PrettyPrinter
  131. def semi: Doc
    Definition Classes
    PrettyPrinterBase
  132. def sep(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  133. def sepArgs(sep: Doc, elems: Doc*): Doc
    Attributes
    protected
    Definition Classes
    SourcePrettyPrinter
  134. def seq[T](l: Seq[T], prefix: String, elemToDoc: (T) ⇒ Doc, sep: Doc, sepfn: (Seq[Doc], Doc) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  135. def softbreak: Doc
    Definition Classes
    PrettyPrinterBase
  136. def softline: Doc
    Definition Classes
    PrettyPrinterBase
  137. def space: Doc
    Definition Classes
    PrettyPrinterBase
  138. def spaces(n: Int): Doc
    Definition Classes
    PrettyPrinterBase
  139. def squote: Doc
    Definition Classes
    PrettyPrinterBase
  140. def squotes(d: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  141. def ssep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  142. def sterm(ds: Seq[Doc], term: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  143. def string(s: String): Doc
    Definition Classes
    PrettyPrinterBase
  144. def surround(d: Doc, b: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  145. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  146. implicit def text(t: String): Doc
    Definition Classes
    PrettyPrinter → PrettyPrinterBase
  147. def tilde: Doc
    Definition Classes
    PrettyPrinterBase
  148. def toDoc(n: BaseNode): Doc
  149. def toParenDoc(e: PrettyExpression): Doc
    Definition Classes
    SourceCommentsPrettyPrinterSourcePrettyPrinter → ParenPrettyPrinter
  150. def toString(): String
    Definition Classes
    AnyRef → Any
  151. def underscore: Doc
    Definition Classes
    PrettyPrinterBase
  152. def value(v: Any): Doc
    Definition Classes
    PrettyPrinterBase
  153. def vcat(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  154. def verticalbar: Doc
    Definition Classes
    PrettyPrinterBase
  155. def vsep(ds: Seq[Doc], sep: Doc): Doc
    Definition Classes
    PrettyPrinterBase
  156. def vsep(ds: Seq[Doc]): Doc
    Definition Classes
    PrettyPrinterBase
  157. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  158. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  159. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  160. def width(d: Doc, f: (Int) ⇒ Doc): Doc
    Definition Classes
    PrettyPrinterBase
  161. def withComments(n: BaseNode, pretty: Doc): Doc

Deprecated Value Members

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

Inherited from SourcePrettyPrinter

Inherited from ParenPrettyPrinter

Inherited from Rql2TypeUtils

Inherited from Keywords

Inherited from StrictLogging

Inherited from base.Keywords

Inherited from PrettyPrinter

Inherited from PrettyPrinter

Inherited from PrettyPrinterBase

Inherited from AnyRef

Inherited from Any

Ungrouped