scala.tools.nsc.backend.icode.Members

IMethod

class IMethod extends ICodes.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
ICodes.IMember, math.Ordered[ICodes.IMember], Comparable[ICodes.IMember], AnyRef, Any
Known Subclasses
Type Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. IMethod
  2. IMember
  3. Ordered
  4. Comparable
  5. AnyRef
  6. Any
Implicitly
  1. by orderingToOrdered
  2. by any2stringadd
  3. by any2stringfmt
  4. by any2ArrowAssoc
  5. by any2Ensuring
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new IMethod(symbol: Global.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 ICodes.IMethod to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (ICodes.IMethod, B)

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

    Definition Classes
    Ordered
  7. def <=(that: ICodes.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: ICodes.IMember): Boolean

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

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

  13. def addLocal(l: ICodes.Local): ICodes.Local

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

  15. def addParam(p: ICodes.Local): Unit

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

  17. final def asInstanceOf[T0]: T0

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

  19. var bytecodeHasEHs: Boolean

  20. def checkLocals(): Unit

  21. def clone(): AnyRef

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

  23. def compare(other: ICodes.IMember): Int

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

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

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

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

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

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

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

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

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

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

  33. def finalize(): Unit

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

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

  36. def formatted(fmtstr: String): String

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

    Definition Classes
    AnyRef → Any
  38. def hasCode: Boolean

  39. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  40. def isAbstractMethod: Boolean

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

  41. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  42. def isStatic: Boolean

  43. def lastBlock: ICodes.BasicBlock

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

  45. var locals: List[ICodes.Local]

    local variables and method parameters

  46. def lookupLocal(sym: Global.Symbol): Option[ICodes.Local]

  47. def lookupLocal(n: Global.Name): Option[ICodes.Local]

  48. def matchesSignature(other: ICodes.IMethod): Boolean

  49. var native: Boolean

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

    Definition Classes
    AnyRef
  51. def newBlock(): ICodes.BasicBlock

  52. 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.

  53. final def notify(): Unit

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

    Definition Classes
    AnyRef
  55. var params: List[ICodes.Local]

    method parameters

  56. var recursive: Boolean

  57. var returnType: ICodes.TypeKind

  58. def setCode(code: ICodes.Code): ICodes.IMethod

  59. var sourceFile: SourceFile

  60. def startBlock: ICodes.BasicBlock

  61. val symbol: Global.Symbol

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

    Definition Classes
    AnyRef
  63. def toString(): String

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

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

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

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

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

Shadowed Implict Value Members

  1. def <(that: ICodes.IMethod): Boolean

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to math.Ordered[ICodes.IMethod] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[ICodes.IMethod] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (iMethod: math.Ordered[ICodes.IMethod]).<(that)
    Definition Classes
    Ordered
  2. def <=(that: ICodes.IMethod): Boolean

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to math.Ordered[ICodes.IMethod] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[ICodes.IMethod] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (iMethod: math.Ordered[ICodes.IMethod]).<=(that)
    Definition Classes
    Ordered
  3. def >(that: ICodes.IMethod): Boolean

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to math.Ordered[ICodes.IMethod] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[ICodes.IMethod] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (iMethod: math.Ordered[ICodes.IMethod]).>(that)
    Definition Classes
    Ordered
  4. def >=(that: ICodes.IMethod): Boolean

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to math.Ordered[ICodes.IMethod] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[ICodes.IMethod] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (iMethod: math.Ordered[ICodes.IMethod]).>=(that)
    Definition Classes
    Ordered
  5. def compare(that: ICodes.IMethod): Int

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to math.Ordered[ICodes.IMethod] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[ICodes.IMethod] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (iMethod: math.Ordered[ICodes.IMethod]).compare(that)
    Definition Classes
    Ordered
  6. def compareTo(that: ICodes.IMethod): Int

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to math.Ordered[ICodes.IMethod] performed by method orderingToOrdered in scala.math.Ordered. This conversion will take place only if an implicit value of type math.Ordering[ICodes.IMethod] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (iMethod: math.Ordered[ICodes.IMethod]).compareTo(that)
    Definition Classes
    Ordered → Comparable
  7. val self: Any

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to StringAdd performed by method any2stringadd in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (iMethod: StringAdd).self
    Definition Classes
    StringAdd
  8. val self: Any

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to StringFormat performed by method any2stringfmt in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (iMethod: StringFormat).self
    Definition Classes
    StringFormat

Deprecated Value Members

  1. def x: ICodes.IMethod

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to ArrowAssoc[ICodes.IMethod] performed by method any2ArrowAssoc in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (iMethod: ArrowAssoc[ICodes.IMethod]).x
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  2. def x: ICodes.IMethod

    Implicit information
    This member is added by an implicit conversion from ICodes.IMethod to Ensuring[ICodes.IMethod] performed by method any2Ensuring in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (iMethod: Ensuring[ICodes.IMethod]).x
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from ICodes.IMember

Inherited from math.Ordered[ICodes.IMember]

Inherited from Comparable[ICodes.IMember]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion orderingToOrdered from ICodes.IMethod to math.Ordered[ICodes.IMethod]

Inherited by implicit conversion any2stringadd from ICodes.IMethod to StringAdd

Inherited by implicit conversion any2stringfmt from ICodes.IMethod to StringFormat

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

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

Ungrouped