Synthesizer

dotty.tools.dotc.typer.Synthesizer
See theSynthesizer companion object
class Synthesizer(typer: Typer)(using c: Context)

Synthesize terms for special classes

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Type members

Types

Handlers to synthesize implicits for special types

Handlers to synthesize implicits for special types

Attributes

Value members

Concrete methods

def makeMirror(synth: (Type, Type, Span) => Context ?=> TreeWithErrors, formal: Type, span: Span)(using Context): TreeWithErrors
def tryAll(formal: Type, span: Span)(using Context): TreeWithErrors

Concrete fields

If formal is of the form CanEqual[T, U], try to synthesize an CanEqual.canEqualAny[T, U] as solution.

If formal is of the form CanEqual[T, U], try to synthesize an CanEqual.canEqualAny[T, U] as solution.

Attributes

An implied instance for a type of the form Mirror { type MirroredType = T } where T is a generic sum or product or singleton type.

An implied instance for a type of the form Mirror { type MirroredType = T } where T is a generic sum or product or singleton type.

Attributes

An implied instance for a type of the form Mirror.Product { type MirroredType = T } where T is a generic product type or a case object or an enum case.

An implied instance for a type of the form Mirror.Product { type MirroredType = T } where T is a generic product type or a case object or an enum case.

Attributes

An implied instance for a type of the form Mirror.Sum { type MirroredType = T } where T is a generic sum type.

An implied instance for a type of the form Mirror.Sum { type MirroredType = T } where T is a generic sum type.

Attributes

Creates a tree that will produce a ValueOf instance for the requested type. An EmptyTreeNoError is returned if materialization fails.

Creates a tree that will produce a ValueOf instance for the requested type. An EmptyTreeNoError is returned if materialization fails.

Attributes