Skip to content

Commit 2f8e87e

Browse files
committed
Differentiate between scala and java's flags: private and final
1 parent a3acd9b commit 2f8e87e

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

src/dotty/tools/backend/jvm/DottyBackendInterface.scala

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -413,6 +413,12 @@ class DottyBackendInterface()(implicit ctx: Context) extends BackendInterface{
413413
def isJavaDefined: Boolean = sym is Flags.JavaDefined
414414
def isDeferred: Boolean = sym is Flags.Deferred
415415
def isPrivate: Boolean = sym is Flags.Private
416+
def getsJavaFinalFlag: Boolean =
417+
isFinal && !sym.isClassConstructor && !(sym is Flags.Mutable) && !(sym.enclosingClass is Flags.JavaInterface)
418+
419+
def getsJavaPrivateFlag: Boolean =
420+
isPrivate //|| (sym.isPrimaryConstructor && sym.owner.isTopLevelModuleClass)
421+
416422
def isFinal: Boolean = sym is Flags.Final
417423
def isStaticMember: Boolean = (sym is Flags.JavaStatic) || (owner is Flags.ImplClass)
418424
def isBottomClass: Boolean = (sym ne defn.NullClass) && (sym ne defn.NothingClass)

0 commit comments

Comments
 (0)