scalaShadowing
Members
language
The scala.language object controls the language features available to the programmer, as proposed in the
[https://docs.google.com/document/d/1nlkvpoIRk...
[dynamics `dynamics`][scala.Dynamic `Dynamic`] [postfixOps `postfixOps`] [reflectiveCalls `reflectiveCalls`] [implicitConversions `implicitConversions`] [higherKinds `higherKinds`] [existentials `existentials`] [experimental `experimental`]
The scala.language object controls the language features available to the programmer, as proposed in the
[[https://docs.google.com/document/d/1nlkvpoIRkx7at1qJEZafJwthZ3GeIklTFhqmXMvTX9Q/edit '''SIP-18 document''']].
Each of these features has to be explicitly imported into the current scope to become available: {{{ import language.postfixOps // or language._ List(1, 2, 3) reverse }}}
The language features are:
- [[dynamics dynamics]] enables defining calls rewriting using the [[scala.Dynamic Dynamic]] trait
- [[postfixOps postfixOps]] enables postfix operators
- [[reflectiveCalls reflectiveCalls]] enables using structural types
- [[implicitConversions implicitConversions]] enables defining implicit methods and members
- [[higherKinds higherKinds]] enables writing higher-kinded types
- [[existentials existentials]] enables writing existential types
- [[experimental experimental]] contains newer features that have not yet been tested in production
and, for dotty:
- [[Scala2
Scala2]] backwards compatibility mode for Scala2 - [[noAutoTupling
noAutoTupling]] disable auto-tupling - [[strictEquality
strictEquality]] enable strick equality