Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
硅谷海盗
kotlin
提交
8d69af87
K
kotlin
项目概览
硅谷海盗
/
kotlin
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kotlin
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
8d69af87
编写于
5月 31, 2012
作者:
N
Nikolay Krasko
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Completion for java inner class names
上级
95414078
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
34 addition
and
10 deletion
+34
-10
compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.java
...brains/jet/lang/resolve/java/JavaClassOrPackageScope.java
+11
-7
idea/testData/completion/basic/multifile/JavaInnerClasses.java
...testData/completion/basic/multifile/JavaInnerClasses.java
+5
-0
idea/testData/completion/basic/multifile/JavaInnerClasses.kt
idea/testData/completion/basic/multifile/JavaInnerClasses.kt
+5
-0
idea/tests/org/jetbrains/jet/completion/JetCompletionMultiTestBase.java
.../jetbrains/jet/completion/JetCompletionMultiTestBase.java
+8
-3
idea/tests/org/jetbrains/jet/completion/JetMultifileBasicCompletionTest.java
...rains/jet/completion/JetMultifileBasicCompletionTest.java
+5
-0
未找到文件。
compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaClassOrPackageScope.java
浏览文件 @
8d69af87
...
...
@@ -21,11 +21,7 @@ import com.intellij.psi.PsiClass;
import
com.intellij.psi.PsiModifier
;
import
com.intellij.psi.PsiPackage
;
import
org.jetbrains.annotations.NotNull
;
import
org.jetbrains.jet.lang.descriptors.ClassDescriptor
;
import
org.jetbrains.jet.lang.descriptors.DeclarationDescriptor
;
import
org.jetbrains.jet.lang.descriptors.FunctionDescriptor
;
import
org.jetbrains.jet.lang.descriptors.NamespaceDescriptor
;
import
org.jetbrains.jet.lang.descriptors.VariableDescriptor
;
import
org.jetbrains.jet.lang.descriptors.*
;
import
org.jetbrains.jet.lang.resolve.name.FqName
;
import
org.jetbrains.jet.lang.resolve.name.Name
;
import
org.jetbrains.jet.lang.resolve.scopes.JetScopeImpl
;
...
...
@@ -82,8 +78,16 @@ public abstract class JavaClassOrPackageScope extends JetScopeImpl {
allDescriptors
.
addAll
(
semanticServices
.
getDescriptorResolver
().
resolveFieldGroup
(
resolverScopeData
));
allDescriptors
.
addAll
(
semanticServices
.
getDescriptorResolver
().
resolveInnerClasses
(
resolverScopeData
.
classOrNamespaceDescriptor
,
resolverScopeData
.
psiClass
,
resolverScopeData
.
staticMembers
));
// TODO: Trying to hack the situation when we produce namespace descriptor for java class and still want to see inner classes
if
(
getContainingDeclaration
()
instanceof
JavaNamespaceDescriptor
)
{
allDescriptors
.
addAll
(
semanticServices
.
getDescriptorResolver
().
resolveInnerClasses
(
resolverScopeData
.
classOrNamespaceDescriptor
,
resolverScopeData
.
psiClass
,
false
));
}
else
{
allDescriptors
.
addAll
(
semanticServices
.
getDescriptorResolver
().
resolveInnerClasses
(
resolverScopeData
.
classOrNamespaceDescriptor
,
resolverScopeData
.
psiClass
,
resolverScopeData
.
staticMembers
));
}
}
if
(
resolverScopeData
.
psiPackage
!=
null
)
{
...
...
idea/testData/completion/basic/multifile/JavaInnerClasses.java
0 → 100644
浏览文件 @
8d69af87
public
final
class
R
{
public
static
final
class
layout
{
public
static
final
int
main
=
0x7f020000
;
}
}
\ No newline at end of file
idea/testData/completion/basic/multifile/JavaInnerClasses.kt
0 → 100644
浏览文件 @
8d69af87
fun
main
(
args
:
Array
<
String
>)
{
println
(
R
.<
caret
>)
}
// EXIST: layout
\ No newline at end of file
idea/tests/org/jetbrains/jet/completion/JetCompletionMultiTestBase.java
浏览文件 @
8d69af87
...
...
@@ -27,11 +27,12 @@ public abstract class JetCompletionMultiTestBase extends CompletionTestCase {
/**
* @param completionLevel {@see CompletionParameters.getInvocationCount()} javadoc
* @param fileNameList
* @throws Exception
*/
protected
void
doFileTest
(
int
completionLevel
)
{
protected
void
doFileTest
(
int
completionLevel
,
String
[]
fileNameList
)
{
try
{
configureByFiles
(
null
,
getFileNameList
()
);
configureByFiles
(
null
,
fileNameList
);
complete
(
completionLevel
);
final
String
fileText
=
getFile
().
getText
();
...
...
@@ -49,7 +50,11 @@ public abstract class JetCompletionMultiTestBase extends CompletionTestCase {
}
}
protected
void
doFileTest
(
int
completionLevel
)
{
doFileTest
(
completionLevel
,
getFileNameList
());
}
protected
void
doFileTest
()
{
doFileTest
(
1
);
doFileTest
(
1
,
getFileNameList
()
);
}
}
idea/tests/org/jetbrains/jet/completion/JetMultifileBasicCompletionTest.java
浏览文件 @
8d69af87
...
...
@@ -43,6 +43,11 @@ public class JetMultifileBasicCompletionTest extends JetCompletionMultiTestBase
doFileTest
();
}
public
void
testJavaInnerClasses
()
throws
Exception
{
String
fileName
=
getTestName
(
false
);
doFileTest
(
1
,
new
String
[]
{
fileName
+
".kt"
,
fileName
+
".java"
});
}
public
void
testNotImportedExtensionFunction
()
throws
Exception
{
doFileTest
();
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录