Packages

object genBCode extends GenBCode

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. genBCode
  2. GenBCode
  3. BCodeSyncAndTry
  4. BCodeBodyBuilder
  5. BCodeSkelBuilder
  6. BCodeHelpers
  7. BytecodeWriters
  8. BCodeIdiomatic
  9. SubComponent
  10. AnyRef
  11. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. abstract class StdPhase extends GlobalPhase

    A standard phase template

    A standard phase template

    Definition Classes
    SubComponent
  2. abstract class PlainBodyBuilder extends PlainSkelBuilder
    Definition Classes
    BCodeBodyBuilder
  3. trait BCAnnotGen extends BCInnerClassGen
    Definition Classes
    BCodeHelpers
  4. trait BCClassGen extends BCInnerClassGen
    Definition Classes
    BCodeHelpers
  5. trait BCForwardersGen extends BCAnnotGen with BCJGenSigGen
    Definition Classes
    BCodeHelpers
  6. trait BCInnerClassGen extends AnyRef
    Definition Classes
    BCodeHelpers
  7. trait BCJGenSigGen extends AnyRef
    Definition Classes
    BCodeHelpers
  8. trait BCPickles extends AnyRef
    Definition Classes
    BCodeHelpers
  9. final class CClassWriter extends ClassWriter
    Definition Classes
    BCodeHelpers
  10. final case class EnclosingMethodEntry (owner: String, name: String, methodDescriptor: String) extends Product with Serializable
    Definition Classes
    BCodeHelpers
  11. trait JAndroidBuilder extends AnyRef
    Definition Classes
    BCodeHelpers
  12. class JBeanInfoBuilder extends BCInnerClassGen
    Definition Classes
    BCodeHelpers
  13. abstract class JCommonBuilder extends BCInnerClassGen with BCAnnotGen with BCForwardersGen with BCPickles
    Definition Classes
    BCodeHelpers
  14. class JMirrorBuilder extends JCommonBuilder
    Definition Classes
    BCodeHelpers
  15. implicit class InsnIterInsnList extends AnyRef
    Definition Classes
    BCodeIdiomatic
  16. implicit class InsnIterMethodNode extends AnyRef
    Definition Classes
    BCodeIdiomatic
  17. abstract class JCodeMethodN extends AnyRef
    Definition Classes
    BCodeIdiomatic
  18. class LabelDefsFinder extends Global.Traverser
    Definition Classes
    BCodeIdiomatic
  19. abstract class PlainSkelBuilder extends BCClassGen with BCAnnotGen with BCInnerClassGen with JAndroidBuilder with BCForwardersGen with BCPickles with BCJGenSigGen
    Definition Classes
    BCodeSkelBuilder
  20. abstract class SyncAndTryBuilder extends PlainBodyBuilder
    Definition Classes
    BCodeSyncAndTry
  21. trait AsmpBytecodeWriter extends BytecodeWriter
    Definition Classes
    BytecodeWriters
  22. trait BytecodeWriter extends AnyRef
    Definition Classes
    BytecodeWriters
  23. trait ClassBytecodeWriter extends BytecodeWriter
    Definition Classes
    BytecodeWriters
  24. class DirectToJarfileWriter extends BytecodeWriter
    Definition Classes
    BytecodeWriters
  25. trait DumpBytecodeWriter extends BytecodeWriter
    Definition Classes
    BytecodeWriters
  26. class BCodePhase extends StdPhase
    Definition Classes
    GenBCode
  27. final class PlainClassBuilder extends SyncAndTryBuilder
    Definition Classes
    GenBCode

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. val EMPTY_BTYPE_ARRAY: Array[backend.jvm.BTypesFromSymbols.BType]
    Definition Classes
    BCodeIdiomatic
  5. val EMPTY_INT_ARRAY: Array[Int]
    Definition Classes
    BCodeIdiomatic
  6. val EMPTY_LABEL_ARRAY: Array[Label]
    Definition Classes
    BCodeIdiomatic
  7. val EMPTY_STRING_ARRAY: Array[String]
    Definition Classes
    BCodeIdiomatic
  8. lazy val JavaStringBuilderClassName: InternalName
    Definition Classes
    BCodeIdiomatic
  9. final def addInnerClasses(jclass: ClassVisitor, refedInnerClasses: List[backend.jvm.BTypesFromSymbols.ClassBType]): Unit
    Definition Classes
    BCodeHelpers
  10. final def afterOwnPhase[T](op: ⇒ T): T
    Definition Classes
    SubComponent
    Annotations
    @inline()
  11. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  12. val bTypes: BTypesFromSymbols[global.type]
    Definition Classes
    BCodeIdiomatic
  13. final def beforeOwnPhase[T](op: ⇒ T): T
    Definition Classes
    SubComponent
    Annotations
    @inline()
  14. def classOriginallyNestedInClass(nestedClass: Global.Symbol, enclosingClass: Global.Symbol): Boolean
    Definition Classes
    BCodeHelpers
  15. val classfileVersion: Int
    Definition Classes
    BCodeIdiomatic
  16. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  17. final def coercionFrom(code: Int): backend.jvm.BTypesFromSymbols.BType
    Definition Classes
    BCodeIdiomatic
  18. final def coercionTo(code: Int): backend.jvm.BTypesFromSymbols.BType
    Definition Classes
    BCodeIdiomatic
  19. def completeSilentlyAndCheckErroneous(sym: Global.Symbol): Boolean

    This is a hack to work around scala/bug#9111.

    This is a hack to work around scala/bug#9111. The completer of methodSym may report type errors. We cannot change the typer context of the completer at this point and make it silent: the context captured when creating the completer in the namer. However, we can temporarily replace global.reporter (it's a var) to store errors.

    Definition Classes
    BCodeHelpers
  20. def considerAsTopLevelImplementationArtifact(classSym: Global.Symbol): Boolean

    True for classes generated by the Scala compiler that are considered top-level in terms of the InnerClass / EnclosingMethod classfile attributes.

    True for classes generated by the Scala compiler that are considered top-level in terms of the InnerClass / EnclosingMethod classfile attributes. See comment in BTypes.

    Definition Classes
    BCodeHelpers
  21. val emitStackMapFrame: Boolean
    Definition Classes
    BCodeIdiomatic
  22. def enabled: Boolean

    Is this component enabled? Default is true.

    Is this component enabled? Default is true.

    Definition Classes
    SubComponent
  23. def enclosingMethodAttribute(classSym: Global.Symbol, classDesc: (Global.Symbol) ⇒ String, methodDesc: (Global.Symbol) ⇒ String): Option[EnclosingMethodEntry]

    Data for emitting an EnclosingMethod attribute.

    Data for emitting an EnclosingMethod attribute. None if classSym is a member class (not an anonymous or local class). See doc in BTypes.

    The class is parameterized by two functions to obtain a bytecode class descriptor for a class symbol, and to obtain a method signature descriptor fro a method symbol. These function depend on the implementation of GenASM / GenBCode, so they need to be passed in.

    Definition Classes
    BCodeHelpers
  24. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  26. val extraProc: Int
    Definition Classes
    BCodeIdiomatic
  27. def factoryNonJarBytecodeWriter(): BytecodeWriter
    Definition Classes
    BytecodeWriters
  28. def fieldSymbols(cls: Global.Symbol): List[Global.Symbol]
    Definition Classes
    BCodeHelpers
  29. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  30. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  31. def getFile(sym: Global.Symbol, clsName: String, suffix: String): AbstractFile
    Definition Classes
    BytecodeWriters
  32. def getFile(base: AbstractFile, clsName: String, suffix: String): AbstractFile

    clsName

    cls.getName

    Definition Classes
    BytecodeWriters
  33. def getFileForClassfile(base: AbstractFile, clsName: String, suffix: String): AbstractFile
    Definition Classes
    BCodeHelpers
  34. def getOutFolder(csym: Global.Symbol, cName: String, cunit: Global.CompilationUnit): AbstractFile
    Definition Classes
    BCodeHelpers
  35. val global: Global.this.type
    Definition Classes
    genBCodeBytecodeWritersSubComponent
  36. def hashCode(): Int

    SubComponent are added to a HashSet and two phases are the same if they have the same name

    SubComponent are added to a HashSet and two phases are the same if they have the same name

    Definition Classes
    SubComponent → AnyRef → Any
  37. def initBytecodeWriter(entryPoints: List[Global.Symbol]): BytecodeWriter
    Definition Classes
    BCodeHelpers
  38. val initial: Boolean

    True if this phase runs before all other phases.

    True if this phase runs before all other phases. Usually, parser.

    Definition Classes
    SubComponent
  39. val internal: Boolean

    True if this phase is not provided by a plug-in.

    True if this phase is not provided by a plug-in.

    Definition Classes
    SubComponent
  40. def isAnonymousOrLocalClass(classSym: Global.Symbol): Boolean

    True if classSym is an anonymous class or a local class.

    True if classSym is an anonymous class or a local class. I.e., false if classSym is a member class. This method is used to decide if we should emit an EnclosingMethod attribute. It is also used to decide whether the "owner" field in the InnerClass attribute should be null.

    Definition Classes
    BCodeHelpers
  41. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  42. def isOriginallyStaticOwner(sym: Global.Symbol): Boolean

    This is basically a re-implementation of sym.isStaticOwner, but using the originalOwner chain.

    This is basically a re-implementation of sym.isStaticOwner, but using the originalOwner chain.

    The problem is that we are interested in a source-level property. Various phases changed the symbol's properties in the meantime, mostly lambdalift modified (destructively) the owner. Therefore, sym.isStatic is not what we want. For example, in object T { def f { object U } } the owner of U is T, so UModuleClass.isStatic is true. Phase travel does not help here.

    Definition Classes
    BCodeHelpers
  43. val majorVersion: Int
    Definition Classes
    BCodeIdiomatic
  44. def methodSymbols(cd: Global.ClassDef): List[Global.Symbol]
    Definition Classes
    BCodeHelpers
  45. final def mkArray(xs: List[Label]): Array[Label]
    Definition Classes
    BCodeIdiomatic
  46. final def mkArray(xs: List[String]): Array[String]
    Definition Classes
    BCodeIdiomatic
  47. final def mkArray(xs: List[backend.jvm.BTypesFromSymbols.BType]): Array[backend.jvm.BTypesFromSymbols.BType]
    Definition Classes
    BCodeIdiomatic
  48. final def mkArrayReverse(xs: List[Int]): Array[Int]
    Definition Classes
    BCodeIdiomatic
  49. final def mkArrayReverse(xs: List[String]): Array[String]
    Definition Classes
    BCodeIdiomatic
  50. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  51. def needsStaticImplMethod(sym: Global.Symbol): Boolean
    Definition Classes
    BCodeHelpers
  52. def newPhase(prev: Phase): BCodePhase

    The phase factory

    The phase factory

    Definition Classes
    GenBCodeSubComponent
  53. def nextEnclosing(sym: Global.Symbol): Global.Symbol

    The next enclosing definition in the source structure.

    The next enclosing definition in the source structure. Includes anonymous function classes under delambdafy:inline, even though they are only generated during UnCurry.

    Definition Classes
    BCodeHelpers
  54. def nextEnclosingClass(sym: Global.Symbol): Global.Symbol
    Definition Classes
    BCodeHelpers
  55. final def notify(): Unit
    Definition Classes
    AnyRef
  56. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  57. def outputDirectory(sym: Global.Symbol): AbstractFile
    Definition Classes
    BytecodeWriters
  58. def ownPhase: Phase

    The phase corresponding to this subcomponent in the current compiler run

    The phase corresponding to this subcomponent in the current compiler run

    Definition Classes
    SubComponent
  59. val phaseName: String
    Definition Classes
    GenBCodeSubComponent
  60. def phaseNewFlags: Long

    New flags defined by the phase which are not valid before

    New flags defined by the phase which are not valid before

    Definition Classes
    SubComponent
  61. def phaseNextFlags: Long

    New flags defined by the phase which are not valid until immediately after it

    New flags defined by the phase which are not valid until immediately after it

    Definition Classes
    SubComponent
  62. var pickledBytes: Int
    Definition Classes
    BCodeHelpers
  63. val requires: List[String]

    Names of phases required by this component.

    Names of phases required by this component. Default is Nil.

    Definition Classes
    SubComponent
  64. val runsAfter: collection.immutable.List[String]
    Definition Classes
    genBCodeSubComponent
  65. val runsBefore: List[String]

    Names of phases that must run after this phase.

    Names of phases that must run after this phase. Default is Nil.

    Definition Classes
    SubComponent
  66. val runsRightAfter: None.type
    Definition Classes
    genBCodeSubComponent
  67. def serialVUID(csym: Global.Symbol): Option[Long]
    Definition Classes
    BCodeHelpers
  68. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  69. val terminal: Boolean

    True if this phase runs after all other phases.

    True if this phase runs after all other phases. Usually, terminal.

    Definition Classes
    SubComponent
  70. def toString(): String
    Definition Classes
    AnyRef → Any
  71. final def traitSuperAccessorName(sym: Global.Symbol): Global.Name
    Definition Classes
    BCodeHelpers
  72. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  73. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  74. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  75. object delambdafyInline

    Cache the value of delambdafy == "inline" for each run.

    Cache the value of delambdafy == "inline" for each run. We need to query this value many times, so caching makes sense.

    Definition Classes
    BCodeHelpers
  76. object isJavaEntryPoint
    Definition Classes
    BCodeHelpers
  77. object JCodeMethodN
    Definition Classes
    BCodeIdiomatic

Inherited from GenBCode

Inherited from BCodeSyncAndTry

Inherited from BCodeBodyBuilder

Inherited from BCodeSkelBuilder

Inherited from BCodeHelpers

Inherited from BytecodeWriters

Inherited from BCodeIdiomatic

Inherited from SubComponent

Inherited from AnyRef

Inherited from Any

Ungrouped