summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/settings/MutableSettings.scala
diff options
context:
space:
mode:
authorSom Snytt <som.snytt@gmail.com>2013-03-25 15:35:55 -0700
committerPaul Phillips <paulp@improving.org>2013-03-27 10:38:14 -0700
commite073975997a5291cbe76ea15e797a6783bb4d544 (patch)
treee4315bc6e4df17114dac052eb99f7cbceff02b2c /src/reflect/scala/reflect/internal/settings/MutableSettings.scala
parent79b18ccf9e9e9cb167ef9c2bdaf7e5adfa9a0ef0 (diff)
downloadscala-e073975997a5291cbe76ea15e797a6783bb4d544.tar.gz
scala-e073975997a5291cbe76ea15e797a6783bb4d544.tar.bz2
scala-e073975997a5291cbe76ea15e797a6783bb4d544.zip
SI-7261 Implicit conversion of BooleanSetting to Boolean and BooleanFlag
This allows a more compact expression `if (settings.debug)` instead of `if (settings.debug.value)` and similarly `render(..., printIds = settings.uniqid, ...)`.
Diffstat (limited to 'src/reflect/scala/reflect/internal/settings/MutableSettings.scala')
-rw-r--r--src/reflect/scala/reflect/internal/settings/MutableSettings.scala5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/reflect/scala/reflect/internal/settings/MutableSettings.scala b/src/reflect/scala/reflect/internal/settings/MutableSettings.scala
index e7a1ea9311..68f9fc8e83 100644
--- a/src/reflect/scala/reflect/internal/settings/MutableSettings.scala
+++ b/src/reflect/scala/reflect/internal/settings/MutableSettings.scala
@@ -49,3 +49,8 @@ abstract class MutableSettings extends AbsSettings {
def XfullLubs: BooleanSetting
def breakCycles: BooleanSetting
}
+object MutableSettings {
+ import scala.language.implicitConversions
+ /** Support the common use case, `if (settings.debug) println("Hello, martin.")` */
+ @inline implicit def reflectSettingToBoolean(s: MutableSettings#BooleanSetting): Boolean = s.value
+}