dotty.tools.dotc.printing

Formatting

Related Doc: package printing

object Formatting

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Formatting
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. class ErrorMessageFormatter extends StringFormatter

    The em string interpolator works like the i string interpolator, but marks nonsensical errors using <nonsensical>...</nonsensical> tags.

    The em string interpolator works like the i string interpolator, but marks nonsensical errors using <nonsensical>...</nonsensical> tags. Note: Instead of these tags, it would be nicer to return a data structure containing the message string and a boolean indicating whether the message is sensical, but then we cannot use string operations like concatenation, stripMargin etc on the values returned by em"...", and in the current error message composition methods, this is crucial.

  2. class StringFormatter extends AnyRef

    General purpose string formatter, with the following features:

    General purpose string formatter, with the following features:

    1) On all Showables, show is called instead of toString 2) Exceptions raised by a show are handled by falling back to toString. 3) Sequences can be formatted using the desired separator between two % signs, eg i"myList = (${myList}%, %)" 4) Safe handling of multi-line margins. Left margins are skipped om the parts of the string context *before* inserting the arguments. That way, we guard against accidentally treating an interpolated value as a margin.

  3. class SyntaxFormatter extends StringFormatter

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 asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def disambiguateTypes(args: Type*)(implicit ctx: Context): (String, Context)

    When getting a type mismatch it is useful to disambiguate placeholders like:

    When getting a type mismatch it is useful to disambiguate placeholders like:

    found: List[Int] required: List[T] where: T is a type in the initalizer of value s which is an alias of String

    returns

    the where section as well as the printing context for the placeholders - ("T is a...", printCtx)

  7. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  9. def explained2(op: (Context) ⇒ String)(implicit ctx: Context): String

    Entrypoint for explanation string interpolator:

    Entrypoint for explanation string interpolator:

    ex"disambiguate $tpe1 and $tpe2"

  10. def explanation(entry: AnyRef)(implicit ctx: Context): String

    Create explanation for single Recorded type or symbol

  11. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  13. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  14. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  15. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  16. final def notify(): Unit

    Definition Classes
    AnyRef
  17. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  18. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  19. def toString(): String

    Definition Classes
    AnyRef → Any
  20. def typeDiff(found: Type, expected: Type)(implicit ctx: Context): (String, String)

    This method will produce a colored type diff from the given arguments.

    This method will produce a colored type diff from the given arguments. The idea is to do this for known cases that are useful and then fall back on regular syntax highlighting for the cases which are unhandled.

    Please not that if used in combination with disambiguateTypes the correct Context for printing should also be passed when calling the method.

    returns

    the (found, expected, changePercentage) with coloring to highlight the difference

  21. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped