Dotty Documentation

0.4.0-bin-SNAPSHOT

class PlainPrinter
extends Printer

[-] Constructors

PlainPrinter ( _ctx: Context )

[-] Members

[+] private val _ctx : Context
[+] private var maxSummarized : Int
[+] private var openRecs : List [ RecType ]
[+] protected def ParamRefNameString ( name: Name ) : String
[+] protected def ParamRefNameString ( param: ParamRef ) : String
[+] def annotsText ( sym: Symbol ) : Text
[+] protected def argText ( arg: Type ) : Text
[+] protected final def controlled ( op: => Text ) : Text
[+] protected implicit def ctx : Context
[+] def dclText ( sym: Symbol ) : Text

Textual representation of symbol's declaration

[+] def dclText ( d: SingleDenotation ) : Text

Textual representation of single denotation's declaration

[+] private def dclTextWithInfo ( sym: Symbol , info: Option [ Type ] ) : Text
[+] def dclsText ( syms: List [ Symbol ] , sep: String ) : Text

Textual representation of all symbols in given list, using dclText for displaying each.

[+] @switch private def escapedChar ( ch: Char ) : String
[+] protected def escapedString ( str: String ) : String
[+] def extendedLocationText ( sym: Symbol ) : Text

A description of sym's location

[+] protected def fullNameOwner ( sym: Symbol ) : Symbol
[+] def fullNameString ( sym: Symbol ) : String

The fully qualified name of the symbol

[+] protected def hasMeaninglessName ( sym: Symbol ) : Boolean

If the name of the symbol's owner should be used when you care about seeing an interesting name: in such cases this symbol is e.g. a method parameter with a synthetic name, a constructor named "this", an object "package", etc. The kind string, if non-empty, will be phrased relative to the name of the owner.

[+] def homogenize ( tp: Type ) : Type
[+] private def homogenizeArg ( tp: Type ) : Type
[+] protected def homogenizedView : Boolean

If true, tweak output so it is the same before and after pickling

[+] protected def idString ( sym: Symbol ) : String

If -uniqid is set, the unique id of symbol, after a #

[+] protected def isEmptyPrefix ( sym: Symbol ) : Boolean
[+] protected def isOmittablePrefix ( sym: Symbol ) : Boolean
[+] protected def keyString ( sym: Symbol ) : String

String representation of symbol's definition key word

[+] def kindString ( sym: Symbol ) : String

String representation of symbol's kind.

[+] protected def lambdaHash ( pt: LambdaType ) : Text

If -uniqid is set, the hashcode of the lambda type, after a #

[+] def locatedText ( sym: Symbol ) : Text

Textual representation of symbol and its location

[+] def locationText ( sym: Symbol ) : Text

If symbol's owner is a printable class C, the text "in C", otherwise ""

[+] private def maxSummarized_= ( x$1: Int ) : Unit
[+] protected def maxToTextRecursions : Int
[+] def nameString ( name: Name ) : String

The name, possibley with with namespace suffix if debugNames is set: /L for local names, /V for other term names, /T for type names

[+] def nameString ( sym: Symbol ) : String

The name of the given symbol. If !settings.debug, the original name where expansions of operators are translated back to operator symbol. E.g. $eq => =. If settings.uniqid, adds id.

[+] protected def objectPrefix : String
[+] private def openRecs_= ( x$1: List [ RecType ] ) : Unit
[+] protected def packagePrefix : String
[+] def plain : Printer

A plain printer without any embellishments

[+] protected def recursionLimitExceeded ( ) : Unit
[+] private def refinementChain ( tp: Type ) : List [ Type ]

The longest sequence of refinement types, starting at given type and following parents.

[+] protected def refinementNameString ( tp: RefinedType ) : String

String representation of a name used in a refinement In refined printing this undoes type parameter expansion

[+] private def sameBound ( lo: Type , hi: Type ) : Boolean
[+] protected def selectionString ( tp: NamedType ) : String
[+] private def selfRecName ( n: Int ) : String
[+] protected def simpleNameString ( sym: Symbol ) : String

The name of the symbol without a unique id.

[+] def summarized ( depth: Int ) ( op: => T ) : T

Perform string or text-producing operation op so that only a summarized text with given recursion depth is shown

[+] def summarized ( op: => T ) : T
[+] protected def toText ( elems: Traversable [ Showable ] , sep: String ) : Text

Render elements alternating with sep string

[+] def toText ( name: Name ) : Text

The name as a text

[+] def toText ( tp: Type ) : Text

Textual representation of type

[+] def toText ( sym: Symbol ) : Text

Textual representation, including symbol's kind e.g., "class Foo", "method Bar". If hasMeaninglessName is true, uses the owner's name to disambiguate identity.

[+] def toText ( denot: Denotation ) : Text

Textual representation of denotation

[+] def toText ( const: Constant ) : Text

Textual representation of constant

[+] def toText ( annot: Annotation ) : Text

Textual representation of annotation

[+] def toText ( sc: Scope ) : Text

Textual representation of all definitions in a scope using dclText for each

[+] def toText ( tree: Tree [ T ] ) : Text

Textual representation of tree

[+] def toText ( result: SearchResult ) : Text

Textual representation of implicit search result

[+] def toText ( importInfo: ImportInfo ) : Text

Textual representation of info relating to an import clause

[+] protected def toTextFlags ( sym: Symbol ) : Text

String representation of symbol's flags

[+] protected def toTextGlobal ( elem: Showable ) : Text

Render element within lowest precedence

[+] protected def toTextGlobal ( elems: Traversable [ Showable ] , sep: String ) : Text
[+] protected def toTextLocal ( elem: Showable ) : Text

Render element within highest precedence

[+] protected def toTextLocal ( elems: Traversable [ Showable ] , sep: String ) : Text
[+] protected def toTextParents ( parents: List [ Type ] ) : Text
[+] protected def toTextPrefix ( tp: Type ) : Text

The string representation of this type used as a prefix

[+] protected def toTextRHS ( optType: Option [ Type ] ) : Text

String representation of a definition's type following its name, if symbol is completed, "?" otherwise.

[+] protected def toTextRHS ( tp: Type ) : Text

String representation of a definition's type following its name

[+] protected def toTextRef ( tp: SingletonType ) : Text

The string representation of this type used as a prefix

[+] protected def toTextRefinement ( rt: RefinedType ) : Closed

String representation of a refinement

[+] protected def treatAsTypeArg ( sym: Symbol ) : Boolean
[+] protected def treatAsTypeParam ( sym: Symbol ) : Boolean
[+] protected def trimPrefix ( text: Text ) : Text
[+] protected def varianceString ( sym: Symbol ) : String

String representation of symbol's variance or "" if not applicable

[+] protected def varianceString ( v: Int ) : String