Packages

t

scala.tools.nsc.typechecker.splain

SplainDiagnostics

trait SplainDiagnostics extends SplainFormatting

Self Type
Analyzer
Source
SplainDiagnostics.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SplainDiagnostics
  2. SplainFormatting
  3. SplainFormatters
  4. AnyRef
  5. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. trait SpecialFormatter extends AnyRef
    Definition Classes
    SplainFormatters
  2. case class TypeParts(sym: Global.Symbol, tt: Global.Type) extends Product with Serializable
    Definition Classes
    SplainFormatting

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from SplainDiagnostics toany2stringadd[SplainDiagnostics] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (SplainDiagnostics, B)
    Implicit
    This member is added by an implicit conversion from SplainDiagnostics toArrowAssoc[SplainDiagnostics] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def bracket[A](params: List[A]): String
    Definition Classes
    SplainFormatting
  8. def breakInfix(types: List[Formatted]): TypeRepr

    Break a list produced by flattenInfix into lines by taking two elements at a time, then appending the terminal.

    Break a list produced by flattenInfix into lines by taking two elements at a time, then appending the terminal. If the expression's length is smaller than the threshold specified via plugin parameter, return a single line.

    Definition Classes
    SplainFormatting
  9. val breakInfixLength: Int
    Definition Classes
    SplainFormatting
  10. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  11. def ctorNames(tpe: Global.Type): List[String]
    Definition Classes
    SplainFormatting
  12. def dealias(tpe: Global.Type): Global.Type
    Definition Classes
    SplainFormatting
  13. def decideBreak(flat: FlatType, broken: => BrokenType): TypeRepr
    Definition Classes
    SplainFormatting
  14. def deepestLevel(chain: List[Analyzer.ImplicitError]): Int
    Definition Classes
    SplainFormatting
  15. def ensuring(cond: (SplainDiagnostics) => Boolean, msg: => Any): SplainDiagnostics
    Implicit
    This member is added by an implicit conversion from SplainDiagnostics toEnsuring[SplainDiagnostics] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: (SplainDiagnostics) => Boolean): SplainDiagnostics
    Implicit
    This member is added by an implicit conversion from SplainDiagnostics toEnsuring[SplainDiagnostics] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: Boolean, msg: => Any): SplainDiagnostics
    Implicit
    This member is added by an implicit conversion from SplainDiagnostics toEnsuring[SplainDiagnostics] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. def ensuring(cond: Boolean): SplainDiagnostics
    Implicit
    This member is added by an implicit conversion from SplainDiagnostics toEnsuring[SplainDiagnostics] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  19. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  21. def extractArgs(tpe: Global.Type): collection.immutable.List[Global.Type]
    Definition Classes
    SplainFormatting
  22. def flattenInfix(tpe: Infix): List[Formatted]

    Turn a nested infix type structure into a flat list

    Turn a nested infix type structure into a flat list

    ::[A, ::[B, C]]] => List(A, ::, B, ::, C)
    Definition Classes
    SplainFormatting
  23. def formatAuxSimple(tpe: Global.Type): (List[String], String)
    Definition Classes
    SplainFormatting
  24. def formatDiff(left: Global.Type, right: Global.Type, top: Boolean): Formatted
    Definition Classes
    SplainFormatting
  25. val formatDiffCache: FormatCache[(Global.Type, Global.Type, Boolean), Formatted]
    Definition Classes
    SplainFormatting
  26. def formatDiffImpl(found: Global.Type, req: Global.Type, top: Boolean): Formatted
    Definition Classes
    SplainFormatting
  27. def formatDiffInfix(left: Global.Type, right: Global.Type, top: Boolean): Formatted
    Definition Classes
    SplainFormatting
  28. def formatDiffSimple(left: Global.Type, right: Global.Type): Formatted
    Definition Classes
    SplainFormatting
  29. def formatDiffSpecial(left: Global.Type, right: Global.Type, top: Boolean): Option[Formatted]
    Definition Classes
    SplainFormatting
  30. def formatFunction(args: List[String]): String
    Definition Classes
    SplainFormatting
  31. def formatImplicitChain(chain: List[Analyzer.ImplicitError]): List[String]
    Definition Classes
    SplainFormatting
  32. def formatImplicitChainFlat(chain: List[Analyzer.ImplicitError]): List[String]
    Definition Classes
    SplainFormatting
  33. def formatImplicitChainTreeCompact(chain: List[Analyzer.ImplicitError]): Option[List[String]]
    Definition Classes
    SplainFormatting
  34. def formatImplicitChainTreeFull(chain: List[Analyzer.ImplicitError]): List[String]
    Definition Classes
    SplainFormatting
  35. def formatImplicitError(param: Global.Symbol, errors: List[Analyzer.ImplicitError], annotationMsg: String): String
    Definition Classes
    SplainFormatting
  36. def formatIndentTree(chain: List[Analyzer.ImplicitError], baseIndent: Int): List[String]
    Definition Classes
    SplainFormatting
  37. def formatInfix[A](path: List[String], simple: String, left: A, right: A, top: Boolean)(rec: (A, Boolean) => Formatted): Formatted
    Definition Classes
    SplainFormatting
  38. def formatNestedImplicit(err: Analyzer.ImplicitError): (String, List[String], Int)
    Definition Classes
    SplainFormatting
  39. def formatNestedImplicits(errors: List[Analyzer.ImplicitError]): collection.immutable.List[String]

    Remove duplicates and special cases that should not be shown.

    Remove duplicates and special cases that should not be shown. In some cases, candidates are reported twice, once as Foo.f and once as f. ImplicitError.equals checks the simple names for identity, which is suboptimal, but works for 99% of cases. Special cases are handled in hideImpError

    Definition Classes
    SplainFormatting
  40. def formatNonConfBounds(err: NonconformantBounds): List[String]
    Definition Classes
    SplainFormatting
  41. def formatNormalSimple(tpe: Global.Type): (List[String], String)
    Definition Classes
    SplainFormatting
  42. def formatRefinement(sym: Global.Symbol): String
    Definition Classes
    SplainFormatting
  43. def formatSimpleType(tpe: Global.Type): (List[String], String)
    Definition Classes
    SplainFormatting
  44. def formatSpecial[A](tpe: Global.Type, simple: String, args: List[A], formattedArgs: => List[Formatted], top: Boolean)(rec: (A, Boolean) => Formatted): Option[Formatted]
    Definition Classes
    SplainFormatting
  45. def formatType(tpe: Global.Type, top: Boolean): Formatted
    Definition Classes
    SplainFormattingSplainFormatters
  46. val formatTypeCache: FormatCache[(Global.Type, Boolean), Formatted]
    Definition Classes
    SplainFormatting
  47. def formatTypeImpl(tpe: Global.Type, top: Boolean): Formatted
    Definition Classes
    SplainFormatting
  48. def formatWithInfix[A](tpe: Global.Type, args: List[A], top: Boolean)(rec: (A, Boolean) => Formatted): Formatted
    Definition Classes
    SplainFormatting
  49. def formattedDiff(left: Formatted, right: Formatted): String
    Definition Classes
    SplainFormatting
  50. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  51. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  52. def hideImpError(error: Analyzer.ImplicitError): Boolean
    Definition Classes
    SplainFormatting
  53. def implicitMessage(param: Global.Symbol, annotationMsg: String): List[String]
    Definition Classes
    SplainFormatting
  54. def indent(lines: List[String], n: Int = 1, prefix: String = " "): collection.immutable.List[String]
    Definition Classes
    SplainFormatting
  55. def indentLine(line: String, n: Int = 1, prefix: String = " "): String
    Definition Classes
    SplainFormatting
  56. def indentTree(tree: List[(String, List[String], Int)], baseIndent: Int): List[String]
    Definition Classes
    SplainFormatting
  57. def isAux(tpe: Global.Type): Boolean
    Definition Classes
    SplainFormatting
  58. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  59. def isRefined(tpe: Global.Type): Boolean
    Definition Classes
    SplainFormatting
  60. def isSymbolic(tpe: Global.Type): Boolean
    Definition Classes
    SplainFormatting
  61. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  62. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  63. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  64. def pathPrefix: (List[String]) => String
    Definition Classes
    SplainFormatting
  65. def qualifiedName(path: List[String], name: FormattedName): String
    Definition Classes
    SplainFormatting
  66. def sanitizePath(path: List[String]): List[String]
    Definition Classes
    SplainFormatting
  67. def showFormatted(tpe: Formatted): String
    Definition Classes
    SplainFormatting
  68. def showFormattedL(tpe: Formatted, break: Boolean): TypeRepr
    Definition Classes
    SplainFormatting
  69. val showFormattedLCache: FormatCache[(Formatted, Boolean), TypeRepr]
    Definition Classes
    SplainFormatting
  70. def showFormattedLImpl(tpe: Formatted, break: Boolean): TypeRepr
    Definition Classes
    SplainFormatting
  71. def showFormattedQualified(path: List[String], name: FormattedName): TypeRepr
    Definition Classes
    SplainFormatting
  72. def showFuncParams(args: List[String]): String
    Definition Classes
    SplainFormatting
  73. def showRefined(parents: List[String], decls: List[String]): String
    Definition Classes
    SplainFormatting
  74. def showTuple(args: List[String]): String
    Definition Classes
    SplainFormatting
  75. def showType(tpe: Global.Type): String
    Definition Classes
    SplainFormatting
  76. def showTypeApply(cons: String, args: List[TypeRepr], break: Boolean): TypeRepr

    If the args of an applied type constructor are multiline, create separate lines for the constructor name and the closing bracket; else return a single line.

    If the args of an applied type constructor are multiline, create separate lines for the constructor name and the closing bracket; else return a single line.

    Definition Classes
    SplainFormatting
  77. def showTypeBreakL(tpe: Global.Type): List[String]
    Definition Classes
    SplainFormatting
  78. val specialFormatters: List[Analyzer.SpecialFormatter]
    Definition Classes
    SplainFormatting
  79. def splainFoundReqMsg(found: Global.Type, req: Global.Type): String
  80. def splitChains(errors: List[Analyzer.ImplicitError]): List[List[Analyzer.ImplicitError]]
    Definition Classes
    SplainFormatting
  81. def stripModules(path: List[String], name: FormattedName): String
    Definition Classes
    SplainFormatting
  82. def stripType(tpe: Global.Type): (List[String], String)
    Definition Classes
    SplainFormatting
  83. def symbolPath(sym: Global.Symbol): List[String]
    Definition Classes
    SplainFormatting
  84. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  85. def toString(): String
    Definition Classes
    AnyRef → Any
  86. def truncateDecls(decls: List[Formatted]): Boolean
    Definition Classes
    SplainFormatting
  87. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  88. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  89. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  90. def wrapParens(expr: String, top: Boolean): String
    Definition Classes
    SplainFormatting
  91. def wrapParensRepr(tpe: TypeRepr, top: Boolean): TypeRepr
    Definition Classes
    SplainFormatting
  92. object ByNameFormatter extends Analyzer.SpecialFormatter
    Definition Classes
    SplainFormatters
  93. object FunctionFormatter extends Analyzer.SpecialFormatter
    Definition Classes
    SplainFormatters
  94. object Refined
    Definition Classes
    SplainFormatters
  95. object RefinedFormatter extends Analyzer.SpecialFormatter
    Definition Classes
    SplainFormatters
  96. object TupleFormatter extends Analyzer.SpecialFormatter
    Definition Classes
    SplainFormatters

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated
  2. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from SplainDiagnostics toStringFormat[SplainDiagnostics] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

  3. def [B](y: B): (SplainDiagnostics, B)
    Implicit
    This member is added by an implicit conversion from SplainDiagnostics toArrowAssoc[SplainDiagnostics] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from SplainFormatting

Inherited from SplainFormatters

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromSplainDiagnostics to any2stringadd[SplainDiagnostics]

Inherited by implicit conversion StringFormat fromSplainDiagnostics to StringFormat[SplainDiagnostics]

Inherited by implicit conversion Ensuring fromSplainDiagnostics to Ensuring[SplainDiagnostics]

Inherited by implicit conversion ArrowAssoc fromSplainDiagnostics to ArrowAssoc[SplainDiagnostics]

Ungrouped