summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/doc/Settings.scala
diff options
context:
space:
mode:
authoringoem <ingoem@gmail.com>2012-08-14 14:42:44 +0200
committeringoem <ingoem@gmail.com>2012-08-14 15:50:09 +0200
commit3a2e878fab1c5af3e6306f1bedb52bbcfe71fbf6 (patch)
treed962c583655e07845c0652b30631ab9a78e62cbb /src/compiler/scala/tools/nsc/doc/Settings.scala
parent1c5526ed81a27550cc4f376d6debe89216470c51 (diff)
downloadscala-3a2e878fab1c5af3e6306f1bedb52bbcfe71fbf6.tar.gz
scala-3a2e878fab1c5af3e6306f1bedb52bbcfe71fbf6.tar.bz2
scala-3a2e878fab1c5af3e6306f1bedb52bbcfe71fbf6.zip
Add Scaladoc flag to specify hidden implicit conversions
Diffstat (limited to 'src/compiler/scala/tools/nsc/doc/Settings.scala')
-rw-r--r--src/compiler/scala/tools/nsc/doc/Settings.scala18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/doc/Settings.scala b/src/compiler/scala/tools/nsc/doc/Settings.scala
index 720b1347ef..dbc34bd7b3 100644
--- a/src/compiler/scala/tools/nsc/doc/Settings.scala
+++ b/src/compiler/scala/tools/nsc/doc/Settings.scala
@@ -111,6 +111,12 @@ class Settings(error: String => Unit, val printMsg: String => Unit = println(_))
"only use it if you haven't defined usecase for implicitly inherited members."
)
+ val docImplicitsHide = MultiStringSetting (
+ "-implicits-hide",
+ "implicit(s)",
+ "Hide the members inherited by the given comma separated, fully qualified implicit conversions. Add dot (.) to include default conversions."
+ )
+
val docDiagrams = BooleanSetting (
"-diagrams",
"Create inheritance diagrams for classes, traits and packages."
@@ -203,7 +209,7 @@ class Settings(error: String => Unit, val printMsg: String => Unit = println(_))
docformat, doctitle, docfooter, docversion, docUncompilable, docsourceurl, docgenerator, docRootContent, useStupidTypes,
docDiagrams, docDiagramsDebug, docDiagramsDotPath,
docDiagramsDotTimeout, docDiagramsDotRestart,
- docImplicits, docImplicitsDebug, docImplicitsShowAll,
+ docImplicits, docImplicitsDebug, docImplicitsShowAll, docImplicitsHide,
docDiagramsMaxNormalClasses, docDiagramsMaxImplicitClasses,
docNoPrefixes, docNoLinkWarnings, docRawOutput, docSkipPackages,
docExpandAllTypes, docGroups
@@ -224,6 +230,14 @@ class Settings(error: String => Unit, val printMsg: String => Unit = println(_))
def skipPackage(qname: String) =
skipPackageNames(qname.toLowerCase)
+ lazy val hiddenImplicits: Set[String] = {
+ if (docImplicitsHide.value.isEmpty) hardcoded.commonConversionTargets
+ else docImplicitsHide.value.toSet flatMap { name: String =>
+ if(name == ".") hardcoded.commonConversionTargets
+ else Set(name)
+ }
+ }
+
/**
* This is the hardcoded area of Scaladoc. This is where "undesirable" stuff gets eliminated. I know it's not pretty,
* but ultimately scaladoc has to be useful. :)
@@ -264,7 +278,7 @@ class Settings(error: String => Unit, val printMsg: String => Unit = println(_))
}
/** Common conversion targets that affect any class in Scala */
- val commonConversionTargets = List(
+ val commonConversionTargets = Set(
"scala.Predef.any2stringfmt",
"scala.Predef.any2stringadd",
"scala.Predef.any2ArrowAssoc",