trait Plugins extends AnyRef
Support for run-time loading of compiler plugins.
- Self Type
- Global
- Source
- Plugins.scala
- Alphabetic
- By Inheritance
- Plugins
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- def ->[B](y: B): (Plugins, B)
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def computePluginPhases(): Unit
Extract all phases supplied by plugins and add them to the phasesSet.
Extract all phases supplied by plugins and add them to the phasesSet.
- Attributes
- protected
- See also
phasesSet
- def ensuring(cond: (Plugins) => Boolean, msg: => Any): Plugins
- def ensuring(cond: (Plugins) => Boolean): Plugins
- def ensuring(cond: Boolean, msg: => Any): Plugins
- def ensuring(cond: Boolean): Plugins
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def findMacroClassLoader(): ClassLoader
Obtains a
ClassLoader
instance used for macro expansion.Obtains a
ClassLoader
instance used for macro expansion.By default a new
ScalaClassLoader
is created using the classpath from global and the classloader of self as parent.Mirrors with runtime definitions (e.g. Repl) need to adjust this method.
- def findPluginClassLoader(classpath: Seq[Path]): ClassLoader
Locate or create the classloader to load a compiler plugin with
classpath
.Locate or create the classloader to load a compiler plugin with
classpath
.Subclasses may override to customise the behaviour. The returned classloader must return the first from plugin descriptor from
classpath
whengetResource("scalac-plugin.xml")
is called.- Attributes
- protected
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def loadPlugins(): List[Plugin]
Load all available plugins.
Load all available plugins. Skips plugins that either have the same name as another one, or which define a phase name that another one does.
- Attributes
- protected
- def loadRoughPluginsList(): List[Plugin]
Load a rough list of the plugins.
Load a rough list of the plugins. For speed, it does not instantiate a compiler run. Therefore it cannot test for same-named phases or other problems that are filtered from the final list of plugins.
- Attributes
- protected
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def pluginDescriptions: String
A description of all the plugins that are loaded
- def pluginOptionsHelp: String
Summary of the options for all loaded plugins
- lazy val plugins: List[Plugin]
- lazy val roughPluginsList: List[Plugin]
- Attributes
- protected
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
Deprecated Value Members
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from Plugins toStringFormat[Plugins] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- def →[B](y: B): (Plugins, B)
- Implicit
- This member is added by an implicit conversion from Plugins toArrowAssoc[Plugins] 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.
The Scala compiler and reflection APIs.