DefinitionBase: fix issue where isProtected() returned false for protected static APIs
Similar functions, like isPublic(), isInternal(), and isPrivate() work the same for both static and non-static APIs, so this makes it more consistent for protected APIs. This was likely overlooked because there's a IStaticProtectedNamespaceDefinition, but nothing similar for other static namespaces.
diff --git a/compiler/src/main/java/org/apache/royale/compiler/internal/definitions/DefinitionBase.java b/compiler/src/main/java/org/apache/royale/compiler/internal/definitions/DefinitionBase.java
index c822686..27f617d 100644
--- a/compiler/src/main/java/org/apache/royale/compiler/internal/definitions/DefinitionBase.java
+++ b/compiler/src/main/java/org/apache/royale/compiler/internal/definitions/DefinitionBase.java
@@ -824,7 +824,8 @@
@Override
public boolean isProtected()
{
- return namespaceReference instanceof INamespaceDefinition.IProtectedNamespaceDefinition;
+ return namespaceReference instanceof INamespaceDefinition.IProtectedNamespaceDefinition
+ || namespaceReference instanceof INamespaceDefinition.IStaticProtectedNamespaceDefinition;
}
@Override