diff options
author | Felix Mulder <felix.mulder@gmail.com> | 2016-02-08 13:56:16 +0100 |
---|---|---|
committer | Felix Mulder <felix.mulder@gmail.com> | 2016-02-09 17:16:24 +0100 |
commit | f2e0616f90f934689e4892358d56221504ad2a46 (patch) | |
tree | 785c080954d9e3db23834bb7e73026349ae969e9 /src/scaladoc/scala/tools/nsc/doc/model/ModelFactoryImplicitSupport.scala | |
parent | 08dd102e002b38c7c3151c0c081ee0f902e3b918 (diff) | |
download | scala-f2e0616f90f934689e4892358d56221504ad2a46.tar.gz scala-f2e0616f90f934689e4892358d56221504ad2a46.tar.bz2 scala-f2e0616f90f934689e4892358d56221504ad2a46.zip |
SI-9620: add doc annotation to hide specific conversions
This commit will introduce the doc annotation `@hideImplicitConversion`.
By specifying which conversions to hide, the user can "toggle" which
conversions are kept in the parsed entity.
This implementation is a better workaround than hardcoding which ones to
ignore when running scaladoc.
Review: @VladUreche
Diffstat (limited to 'src/scaladoc/scala/tools/nsc/doc/model/ModelFactoryImplicitSupport.scala')
-rw-r--r-- | src/scaladoc/scala/tools/nsc/doc/model/ModelFactoryImplicitSupport.scala | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/scaladoc/scala/tools/nsc/doc/model/ModelFactoryImplicitSupport.scala b/src/scaladoc/scala/tools/nsc/doc/model/ModelFactoryImplicitSupport.scala index 0264f2f99f..830d902b68 100644 --- a/src/scaladoc/scala/tools/nsc/doc/model/ModelFactoryImplicitSupport.scala +++ b/src/scaladoc/scala/tools/nsc/doc/model/ModelFactoryImplicitSupport.scala @@ -98,10 +98,15 @@ trait ModelFactoryImplicitSupport { // also keep empty conversions, so they appear in diagrams // conversions = conversions.filter(!_.members.isEmpty) - // Filter out specialized conversions from array - if (sym == ArrayClass) - conversions = conversions.filterNot((conv: ImplicitConversionImpl) => - hardcoded.arraySkipConversions.contains(conv.conversionQualifiedName)) + val hiddenConversions: Seq[String] = thisFactory + .comment(sym, inTpl.linkTarget, inTpl) + .map(_.hideImplicitConversions) + .getOrElse(Nil) + + conversions = conversions filterNot { conv: ImplicitConversionImpl => + hiddenConversions.contains(conv.conversionShortName) || + hiddenConversions.contains(conv.conversionQualifiedName) + } // Filter out non-sensical conversions from value types if (isPrimitiveValueType(sym.tpe_*)) |