Packages

abstract class Plugin extends AnyRef

Information about a plugin loaded from a jar file.

The concrete subclass must have a one-argument constructor that accepts an instance of global.

(val global: Global)
Source
Plugin.scala
Linear Supertypes
AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Plugin
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Plugin()

Abstract Value Members

  1. abstract val components: List[PluginComponent]

    The components that this phase defines

  2. abstract val description: String

    A one-line description of the plugin

  3. abstract val global: Global

    The compiler that this plugin uses.

    The compiler that this plugin uses. This is normally equated to a constructor parameter in the concrete subclass.

  4. abstract val name: String

    The name of this plugin

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from Plugin toany2stringadd[Plugin] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (Plugin, B)
    Implicit
    This member is added by an implicit conversion from Plugin toArrowAssoc[Plugin] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def augmentManifest(file: AbstractFile, manifest: Manifest): Unit

    A callback to allow a plugin to customise the manifest of a jar.

    A callback to allow a plugin to customise the manifest of a jar. This is only called if the output is a jar. In the case of a multi-output compile, it is called once for each output (if the output is a jar). Typically this extension point is to avoid the build system having an additional step to add this information, while would otherwise require the jar to be re-built ( as the manifest is required to be the first entry in a jar. The default implementation is a NO-OP

    file

    the file that will contains this manifest. Int the case of a multi-output compile, the plugin can use this to differentiate the outputs

    manifest

    the manifest that will be written

  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  9. def ensuring(cond: (Plugin) => Boolean, msg: => Any): Plugin
    Implicit
    This member is added by an implicit conversion from Plugin toEnsuring[Plugin] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: (Plugin) => Boolean): Plugin
    Implicit
    This member is added by an implicit conversion from Plugin toEnsuring[Plugin] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean, msg: => Any): Plugin
    Implicit
    This member is added by an implicit conversion from Plugin toEnsuring[Plugin] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: Boolean): Plugin
    Implicit
    This member is added by an implicit conversion from Plugin toEnsuring[Plugin] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  15. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  16. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from Plugin toStringFormat[Plugin] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  17. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  18. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  19. def init(options: List[String], error: (String) => Unit): Boolean

    Handle any plugin-specific options.

    Handle any plugin-specific options. The user writes -P:plugname:opt1,opt2, but the plugin sees List(opt1, opt2). The plugin can opt out of further processing by returning false. For example, if the plugin has an "enable" flag, now would be a good time to sit on the bench.

    options

    plugin arguments

    error

    error function

    returns

    true to continue, or false to opt out

  20. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  21. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  23. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  24. def options: List[String]
  25. val optionsHelp: Option[String]

    A description of this plugin's options, suitable as a response to the -help command-line option.

    A description of this plugin's options, suitable as a response to the -help command-line option. Conventionally, the options should be listed with the -P:plugname: part included.

  26. def processOptions(options: List[String], error: (String) => Unit): Unit
    Annotations
    @deprecatedOverriding("use Plugin#init instead", "2.11.0")
  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(classOf[java.lang.InterruptedException])
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  32. def writeAdditionalOutputs(writer: OutputFileWriter): Unit

    A callback to allow a plugin to add additional resources to the generated output.

    A callback to allow a plugin to add additional resources to the generated output. This allows a plug to, for instance, package resources or services into a jar, or add artifacts specific to a build environment. Typically this extension point is used when writing to a jar, to avoid the build system having an additional step to add these resources, and therefore speed up the build process. The default implementation is a NO-OP

    writer

    the writer associated with the targets

Deprecated Value Members

  1. def [B](y: B): (Plugin, B)
    Implicit
    This member is added by an implicit conversion from Plugin toArrowAssoc[Plugin] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromPlugin to any2stringadd[Plugin]

Inherited by implicit conversion StringFormat fromPlugin to StringFormat[Plugin]

Inherited by implicit conversion Ensuring fromPlugin to Ensuring[Plugin]

Inherited by implicit conversion ArrowAssoc fromPlugin to ArrowAssoc[Plugin]

Ungrouped