scala.tools.nsc.backend.icode.Members

IMethod

class IMethod extends IMember

Represents a method in ICode. Local variables contain both locals and parameters, similar to the way the JVM 'sees' them.

Locals and parameters are added in reverse order, as they are kept in cons-lists. The 'builder' is responsible for reversing them and putting them back, when the generation is finished (GenICode does that).

Source
Members.scala
Linear Supertypes
IMember, Ordered[IMember], Comparable[IMember], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. IMethod
  2. IMember
  3. Ordered
  4. Comparable
  5. AnyRef
  6. Any
Implicitly
  1. by any2stringfmt
  2. by any2stringadd
  3. by any2ArrowAssoc
  4. by any2Ensuring
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new IMethod(symbol: Symbol)

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def +(other: String): String

    Implicit information
    This member is added by an implicit conversion from IMethod to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (IMethod, B)

    Implicit information
    This member is added by an implicit conversion from IMethod to ArrowAssoc[IMethod] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. def <(that: IMember): Boolean

    Definition Classes
    Ordered
  7. def <=(that: IMember): Boolean

    Definition Classes
    Ordered
  8. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  9. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  10. def >(that: IMember): Boolean

    Definition Classes
    Ordered
  11. def >=(that: IMember): Boolean

    Definition Classes
    Ordered
  12. def addHandler(e: ExceptionHandler): Unit

  13. def addLocal(l: Local): Local

  14. def addLocals(ls: List[Local]): Unit

  15. def addParam(p: Local): Unit

  16. def addParams(as: List[Local]): Unit

  17. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  18. def blocks: List[BasicBlock]

  19. def checkLocals(): Unit

  20. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  21. var code: Code

  22. def compare(other: IMember): Int

    Definition Classes
    IMember → Ordered
  23. def compareTo(that: IMember): Int

    Definition Classes
    Ordered → Comparable
  24. def dump(): Unit

  25. def ensuring(cond: (IMethod) ⇒ Boolean, msg: ⇒ Any): IMethod

    Implicit information
    This member is added by an implicit conversion from IMethod to Ensuring[IMethod] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  26. def ensuring(cond: (IMethod) ⇒ Boolean): IMethod

    Implicit information
    This member is added by an implicit conversion from IMethod to Ensuring[IMethod] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  27. def ensuring(cond: Boolean, msg: ⇒ Any): IMethod

    Implicit information
    This member is added by an implicit conversion from IMethod to Ensuring[IMethod] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  28. def ensuring(cond: Boolean): IMethod

    Implicit information
    This member is added by an implicit conversion from IMethod to Ensuring[IMethod] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  29. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  31. var exh: List[ExceptionHandler]

    The list of exception handlers, ordered from innermost to outermost.

  32. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  33. def foreachBlock[U](f: (BasicBlock) ⇒ U): Unit

  34. def foreachInstr[U](f: (Instruction) ⇒ U): Unit

  35. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from IMethod to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  36. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  37. def hasCode: Boolean

  38. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  39. def isAbstractMethod: Boolean

    Is this method deferred ('abstract' in Java sense)?

  40. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  41. def isStatic: Boolean

  42. def lastBlock: BasicBlock

  43. def linearizedBlocks(lin: Linearizer = self.linearizer): List[BasicBlock]

  44. var locals: List[Local]

    local variables and method parameters

  45. def lookupLocal(sym: Symbol): Option[Local]

  46. def lookupLocal(n: Name): Option[Local]

  47. def matchesSignature(other: IMethod): Boolean

  48. var native: Boolean

  49. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  50. def newBlock(): BasicBlock

  51. def normalize(): Unit

    Merge together blocks that have a single successor which has a single predecessor.

    Merge together blocks that have a single successor which has a single predecessor. Exception handlers are taken into account (they might force to break a block of straight line code like that).

    This method should be most effective after heavy inlining.

  52. final def notify(): Unit

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

    Definition Classes
    AnyRef
  54. var params: List[Local]

    method parameters

  55. var recursive: Boolean

  56. var returnType: TypeKind

  57. val self: Any

    Implicit information
    This member is added by an implicit conversion from IMethod to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
  58. val self: Any

    Implicit information
    This member is added by an implicit conversion from IMethod to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  59. def setCode(code: Code): IMethod

  60. var sourceFile: SourceFile

  61. def startBlock: BasicBlock

  62. val symbol: Symbol

    Definition Classes
    IMethodIMember
  63. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  64. def toString(): String

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  68. def [B](y: B): (IMethod, B)

    Implicit information
    This member is added by an implicit conversion from IMethod to ArrowAssoc[IMethod] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Deprecated Value Members

  1. def x: IMethod

    Implicit information
    This member is added by an implicit conversion from IMethod to ArrowAssoc[IMethod] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  2. def x: IMethod

    Implicit information
    This member is added by an implicit conversion from IMethod to Ensuring[IMethod] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from IMember

Inherited from Ordered[IMember]

Inherited from Comparable[IMember]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringfmt from IMethod to StringFormat

Inherited by implicit conversion any2stringadd from IMethod to StringAdd

Inherited by implicit conversion any2ArrowAssoc from IMethod to ArrowAssoc[IMethod]

Inherited by implicit conversion any2Ensuring from IMethod to Ensuring[IMethod]