ResearchPlugin

trait ResearchPlugin extends Plugin

A research plugin may customize the compilation pipeline freely

Note

Research plugins are only supported by nightly or snapshot build of the compiler.

trait Plugin
class Object
trait Matchable
class Any

Value members

Abstract methods

def init(options: List[String], plan: List[List[Phase]])(using Context): List[List[Phase]]

Research plugins should override this method to return the new phase plan

Research plugins should override this method to return the new phase plan

Value Params
options:

commandline options to the plugin, -P:plugname:opt1,opt2 becomes List(opt1, opt2)

plan:

the given phase plan

Returns

the new phase plan

Inherited methods

A one-line description of the plugin

A one-line description of the plugin

Inherited from
Plugin

Is this plugin a research plugin?

Is this plugin a research plugin?

Research plugin receives a phase plan and return a new phase plan, while non-research plugin returns a list of phases to be inserted.

Inherited from
Plugin
def name: String

The name of this plugin

The name of this plugin

Inherited from
Plugin

Inherited fields

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.

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.

Inherited from
Plugin