dotty.tools.dotc.typer.Applications

Application

Related Doc: package Applications

abstract class Application[Arg] extends AnyRef

Arg

the type of arguments, could be tpd.Tree, untpd.Tree, or Type

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

Instance Constructors

  1. new Application(methRef: TermRef, funType: Type, args: List[Arg], resultType: Type)(implicit ctx: Context)

    methRef

    the reference to the method of the application

    funType

    the type of the function part of the application

    args

    the arguments of the application

    resultType

    the expected result type of the application

Type Members

  1. abstract type TypedArg

    The type of typed arguments: either tpd.Tree or Type

Abstract Value Members

  1. abstract def addArg(arg: TypedArg, formal: Type): Unit

    Check that argument corresponds to type formal and possibly add it to the list of adapted arguments

    Check that argument corresponds to type formal and possibly add it to the list of adapted arguments

    Attributes
    protected
  2. abstract def appPos: Position

    Attributes
    protected
  3. abstract def fail(msg: ⇒ Message): Unit

    Signal failure with given message at position of the application itself

    Signal failure with given message at position of the application itself

    Attributes
    protected
  4. abstract def fail(msg: ⇒ Message, arg: Arg): Unit

    Signal failure with given message at position of given argument

    Signal failure with given message at position of given argument

    Attributes
    protected
  5. abstract def harmonizeArgs(args: List[TypedArg]): List[TypedArg]

    If all args have primitive numeric types, make sure it's the same one

    If all args have primitive numeric types, make sure it's the same one

    Attributes
    protected
  6. abstract def isVarArg(arg: Arg): Boolean

    Is this an argument of the form expr: _* or a RepeatedParamType derived from such an argument?

    Is this an argument of the form expr: _* or a RepeatedParamType derived from such an argument?

    Attributes
    protected
  7. abstract def makeVarArg(n: Int, elemFormal: Type): Unit

    If constructing trees, turn last n processed arguments into a SeqLiteral tree with element type elemFormal.

    If constructing trees, turn last n processed arguments into a SeqLiteral tree with element type elemFormal.

    Attributes
    protected
  8. abstract def normalizedFun: ast.tpd.Tree

    The current function part, which might be affected by lifting.

    The current function part, which might be affected by lifting.

    Attributes
    protected
  9. abstract def treeToArg(arg: ast.tpd.Tree): Arg

    Turn a typed tree into an argument

    Turn a typed tree into an argument

    Attributes
    protected
  10. abstract def typedArg(arg: Arg, formal: Type): TypedArg

    Given an original argument and the type of the corresponding formal parameter, produce a typed argument.

    Given an original argument and the type of the corresponding formal parameter, produce a typed argument.

    Attributes
    protected

Concrete 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. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. def findDefaultGetter(n: Int)(implicit ctx: Context): ast.tpd.Tree

    Find reference to default parameter getter for parameter #n in current parameter list, or NoType if none was found

  10. final def getClass(): Class[_]

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

    Definition Classes
    AnyRef → Any
  12. def init(): Unit

    Attributes
    protected
  13. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  14. def liftFun(): Unit

    If constructing trees, pull out all parts of the function which are not idempotent into separate prefix definitions

    If constructing trees, pull out all parts of the function which are not idempotent into separate prefix definitions

    Attributes
    protected
  15. def matchArgs(args: List[Arg], formals: List[Type], n: Int): Unit

    Match re-ordered arguments against formal parameters

    Match re-ordered arguments against formal parameters

    n

    The position of the first parameter in formals in methType.

  16. val methType: Type

    The function's type after widening and instantiating polytypes with polyparams in constraint set

  17. def methodType: MethodType

    Attributes
    protected
  18. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  21. def ok: Boolean

  22. def ok_=(x: Boolean): Unit

  23. lazy val orderedArgs: List[Arg]

    The arguments re-ordered so that each named argument matches the same-named formal parameter.

  24. def reorder[T >: Untyped](args: List[Tree[T]]): List[Tree[T]]

    Re-order arguments to correctly align named arguments

  25. def spliceMeth(meth: ast.tpd.Tree, app: ast.tpd.Tree): ast.tpd.Tree

    Splice new method reference into existing application

  26. def success: Boolean

    The application was successful

  27. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  28. def toString(): String

    Definition Classes
    AnyRef → Any
  29. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped