diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorUtils.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorUtils.java index 1523fd2bb76..07e106e1d10 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorUtils.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorUtils.java @@ -303,4 +303,14 @@ public class DescriptorUtils { addSuperTypes(jetType, set); } } + + public static boolean isTopLevelNamespace(@NotNull NamespaceDescriptor namespaceDescriptor) { + return namespaceDescriptor.getContainingDeclaration() instanceof NamespaceDescriptor + && namespaceDescriptor.getContainingDeclaration().getContainingDeclaration() instanceof ModuleDescriptor; + } + + public static boolean isRootNamespace(@NotNull NamespaceDescriptor namespaceDescriptor) { + return namespaceDescriptor.getContainingDeclaration() instanceof ModuleDescriptor; + } + } diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/context/StaticContext.java b/js/js.translator/src/org/jetbrains/k2js/translate/context/StaticContext.java index 2a260406d9f..2f20842f287 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/context/StaticContext.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/context/StaticContext.java @@ -22,12 +22,12 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.resolve.BindingContext; +import org.jetbrains.jet.lang.resolve.DescriptorUtils; import org.jetbrains.jet.lang.types.lang.JetStandardLibrary; import org.jetbrains.k2js.translate.context.generator.Generator; import org.jetbrains.k2js.translate.context.generator.Rule; import org.jetbrains.k2js.translate.intrinsic.Intrinsics; import org.jetbrains.k2js.translate.utils.AnnotationsUtils; -import org.jetbrains.k2js.translate.utils.JsDescriptorUtils; import org.jetbrains.k2js.translate.utils.JsAstUtils; import org.jetbrains.k2js.translate.utils.PredefinedAnnotation; @@ -437,7 +437,7 @@ public final class StaticContext { if (!(descriptor instanceof NamespaceDescriptor)) { return null; } - if (JsDescriptorUtils.isTopLevelNamespace((NamespaceDescriptor) descriptor)) { + if (DescriptorUtils.isTopLevelNamespace((NamespaceDescriptor) descriptor)) { return true; } return null; diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.java index 212c653b383..b2da3265770 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceDeclarationTranslator.java @@ -24,6 +24,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.descriptors.ClassDescriptor; import org.jetbrains.jet.lang.descriptors.NamespaceDescriptor; import org.jetbrains.jet.lang.psi.JetFile; +import org.jetbrains.jet.lang.resolve.DescriptorUtils; import org.jetbrains.k2js.translate.context.Namer; import org.jetbrains.k2js.translate.context.TranslationContext; import org.jetbrains.k2js.translate.general.AbstractTranslator; @@ -126,7 +127,7 @@ public final class NamespaceDeclarationTranslator extends AbstractTranslator { private static List filterTopLevelAndRootNamespaces(@NotNull List namespaceDescriptors) { List result = Lists.newArrayList(); for (NamespaceDescriptor descriptor : namespaceDescriptors) { - if (JsDescriptorUtils.isTopLevelNamespace(descriptor) || JsDescriptorUtils.isRootNamespace(descriptor)) { + if (DescriptorUtils.isTopLevelNamespace(descriptor) || DescriptorUtils.isRootNamespace(descriptor)) { result.add(descriptor); } } diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java index 52d4eb1e408..5e35b6c24aa 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/NamespaceTranslator.java @@ -97,7 +97,7 @@ public final class NamespaceTranslator extends AbstractTranslator { @NotNull private List getNestedNamespaceDeclarations() { - if (JsDescriptorUtils.isRootNamespace(descriptor)) { + if (DescriptorUtils.isRootNamespace(descriptor)) { return Lists.newArrayList(); } List result = Lists.newArrayList(); diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java b/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java index 21619ab2464..1c2fe9dd357 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java @@ -236,15 +236,6 @@ public final class JsDescriptorUtils { } } - public static boolean isTopLevelNamespace(@NotNull NamespaceDescriptor namespaceDescriptor) { - return namespaceDescriptor.getContainingDeclaration() instanceof NamespaceDescriptor - && namespaceDescriptor.getContainingDeclaration().getContainingDeclaration() instanceof ModuleDescriptor; - } - - public static boolean isRootNamespace(@NotNull NamespaceDescriptor namespaceDescriptor) { - return namespaceDescriptor.getContainingDeclaration() instanceof ModuleDescriptor; - } - @NotNull public static List getContainedDescriptorsWhichAreNotPredefined(@NotNull NamespaceDescriptor namespace) { List result = Lists.newArrayList();