Feature

dotty.tools.dotc.config.Feature$
object Feature

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Feature.type

Members list

Value members

Concrete methods

Is auto-tupling enabled?

Is auto-tupling enabled?

Attributes

def ccEnabled(using Context): Boolean

Is captureChecking enabled for this compilation unit?

Is captureChecking enabled for this compilation unit?

Attributes

Is captureChecking enabled for any of the currently compiled compilation units?

Is captureChecking enabled for any of the currently compiled compilation units?

Attributes

def checkExperimentalDef(sym: Symbol, srcPos: SrcPos)(using Context): Unit
def checkExperimentalFeature(which: String, srcPos: SrcPos, note: => String)(using Context): Unit

Check that experimental compiler options are only set for snapshot or nightly compiler versions.

Check that experimental compiler options are only set for snapshot or nightly compiler versions.

Attributes

def enabled(feature: TermName)(using Context): Boolean

Is feature enabled by either a command line setting or an import?

Is feature enabled by either a command line setting or an import?

Value parameters

feature

The name of the feature

owner

The prefix symbol (nested in scala.language) where the feature is defined.

Attributes

def enabledByImport(feature: TermName)(using Context): Boolean

Is feature enabled by by an import? This is the case if the feature is imported by a named import

Is feature enabled by by an import? This is the case if the feature is imported by a named import

 import owner.feature

and there is no visible nested import that excludes the feature, as in

 import owner.{ feature => _ }

Attributes

def enabledBySetting(feature: TermName)(using Context): Boolean

Is feature enabled by by a command-line setting? The enabling setting is

Is feature enabled by by a command-line setting? The enabling setting is

 -language:<prefix>feature

where is the fully qualified name of owner, followed by a ".", but subtracting the prefix scala.language. at the front.

Attributes

def handleGlobalLanguageImport(prefix: TermName, imported: Name)(using Context): Boolean

Handle language import import language.<prefix>.<imported> if it is one of the global imports pureFunctions or captureChecking. In this case make the compilation unit's and current run's fields accordingly.

Handle language import import language.<prefix>.<imported> if it is one of the global imports pureFunctions or captureChecking. In this case make the compilation unit's and current run's fields accordingly.

Attributes

Returns

true iff import that was handled

def migrateTo3(using Context): Boolean

Is pureFunctions enabled for this compilation unit?

Is pureFunctions enabled for this compilation unit?

Attributes

Is pureFunctions enabled for any of the currently compiled compilation units?

Is pureFunctions enabled for any of the currently compiled compilation units?

Attributes

def warnOnMigration(msg: Message, pos: SrcPos, version: SourceVersion)(using Context): Boolean

If current source migrates to version, issue given warning message and return true, otherwise return false.

If current source migrates to version, issue given warning message and return true, otherwise return false.

Attributes