Account for script classes in getAllDescriptors()

This commit is contained in:
Andrey Breslav
2014-04-01 19:47:59 +04:00
parent d51fd634df
commit 363fdf4045
@@ -26,6 +26,7 @@ import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.descriptors.*;
import org.jetbrains.jet.lang.psi.*;
import org.jetbrains.jet.lang.resolve.BindingTrace;
import org.jetbrains.jet.lang.resolve.ScriptNameUtil;
import org.jetbrains.jet.lang.resolve.calls.autocasts.DataFlowInfo;
import org.jetbrains.jet.lang.resolve.lazy.ResolveSession;
import org.jetbrains.jet.lang.resolve.lazy.data.JetClassLikeInfo;
@@ -241,6 +242,9 @@ public abstract class AbstractLazyMemberScope<D extends DeclarationDescriptor, D
JetParameter parameter = (JetParameter) declaration;
result.addAll(getProperties(safeNameForLazyResolve(parameter)));
}
else if (declaration instanceof JetScript) {
result.addAll(classDescriptors.invoke(ScriptNameUtil.classNameForScript((JetScript) declaration).shortName()));
}
else if (declaration instanceof JetTypedef || declaration instanceof JetMultiDeclaration) {
// Do nothing for typedefs as they are not supported.
// MultiDeclarations are not supported on global level too.