diff --git a/compiler/src/scala/quoted/runtime/impl/QuoteContextImpl.scala b/compiler/src/scala/quoted/runtime/impl/QuoteContextImpl.scala index f8d8fce8ba59..8c437b1832ff 100644 --- a/compiler/src/scala/quoted/runtime/impl/QuoteContextImpl.scala +++ b/compiler/src/scala/quoted/runtime/impl/QuoteContextImpl.scala @@ -2451,6 +2451,7 @@ class QuoteContextImpl private (using val ctx: Context) extends QuoteContext, Qu def Mutable: Flags = dotc.core.Flags.Mutable def Object: Flags = dotc.core.Flags.Module def Opaque: Flags = dotc.core.Flags.Opaque + def Open: Flags = dotc.core.Flags.Open def Override: Flags = dotc.core.Flags.Override def Package: Flags = dotc.core.Flags.Package def Param: Flags = dotc.core.Flags.Param diff --git a/library/src/scala/quoted/QuoteContext.scala b/library/src/scala/quoted/QuoteContext.scala index adf813f956b2..387583f11fba 100644 --- a/library/src/scala/quoted/QuoteContext.scala +++ b/library/src/scala/quoted/QuoteContext.scala @@ -3199,6 +3199,9 @@ trait QuoteContext { self: runtime.QuoteUnpickler & runtime.QuoteMatching => /** Is this symbol `opaque` */ def Opaque: Flags + /** Is this symbol `open` */ + def Open: Flags + /** Is this symbol `override` */ def Override: Flags diff --git a/scala3doc/src/dotty/dokka/tasty/SymOps.scala b/scala3doc/src/dotty/dokka/tasty/SymOps.scala index 0b36d49b8f47..d4843c3a4ae2 100644 --- a/scala3doc/src/dotty/dokka/tasty/SymOps.scala +++ b/scala3doc/src/dotty/dokka/tasty/SymOps.scala @@ -47,13 +47,6 @@ class SymOps[Q <: QuoteContext](val q: Q): case (None, None, (false, false, false)) => Visibility.Unrestricted case _ => throw new Exception(s"Visibility for symbol $sym cannot be determined") - // TODO: #49 Remove it after TASTY-Reflect release with published flag Extension - def hackIsOpen: Boolean = { - import dotty.tools.dotc - given dotc.core.Contexts.Context = qctx.asInstanceOf[scala.quoted.runtime.impl.QuoteContextImpl].ctx - val symbol = sym.asInstanceOf[dotc.core.Symbols.Symbol] - symbol.is(dotc.core.Flags.Open) - } // Order here determines order in documenation def getExtraModifiers(): Seq[Modifier] = Seq( @@ -64,10 +57,10 @@ class SymOps[Q <: QuoteContext](val q: Q): Flags.Implicit -> Modifier.Implicit, Flags.Inline -> Modifier.Inline, Flags.Lazy -> Modifier.Lazy, + Flags.Open -> Modifier.Open, Flags.Override -> Modifier.Override, Flags.Case -> Modifier.Case, ).collect { case (flag, mod) if sym.flags.is(flag) => mod } - ++ (if(sym.hackIsOpen) Seq(Modifier.Open) else Nil) def isHiddenByVisibility: Boolean = import VisibilityScope._