Create from Usage: Support class generation by class literal expression

#KT-16188 Fixed
This commit is contained in:
Alexey Sedunov
2017-02-09 13:06:12 +03:00
parent 505a6bcbf2
commit 834cdd63ab
14 changed files with 120 additions and 0 deletions
@@ -5,6 +5,10 @@
// ACTION: Create parameter 'CoroutineImpl'
// ACTION: Create property 'CoroutineImpl'
// ACTION: Introduce local variable
// ACTION: Create annotation 'CoroutineImpl'
// ACTION: Create class 'CoroutineImpl'
// ACTION: Create enum 'CoroutineImpl'
// ACTION: Create interface 'CoroutineImpl'
// ACTION: Rename reference
// ERROR: Unresolved reference: CoroutineImpl
@@ -4,6 +4,10 @@
// ACTION: Create object 'FunctionReference'
// ACTION: Create parameter 'FunctionReference'
// ACTION: Create property 'FunctionReference'
// ACTION: Create annotation 'FunctionReference'
// ACTION: Create class 'FunctionReference'
// ACTION: Create enum 'FunctionReference'
// ACTION: Create interface 'FunctionReference'
// ACTION: Introduce local variable
// ACTION: Rename reference
// ERROR: Unresolved reference: FunctionReference
@@ -0,0 +1,6 @@
// "Create annotation 'Foo'" "true"
class Test{
fun doSth(){
<caret>Foo::class.java
}
}
@@ -0,0 +1,8 @@
// "Create annotation 'Foo'" "true"
class Test{
fun doSth(){
Foo::class.java
}
}
<caret>annotation class Foo
@@ -0,0 +1,6 @@
// "Create class 'Foo'" "true"
class Test{
fun doSth(){
<caret>Foo::class.java
}
}
@@ -0,0 +1,10 @@
// "Create class 'Foo'" "true"
class Test{
fun doSth(){
Foo::class.java
}
}
<caret>class Foo {
}
@@ -0,0 +1,6 @@
// "Create enum 'Foo'" "true"
class Test{
fun doSth(){
<caret>Foo::class.java
}
}
@@ -0,0 +1,10 @@
// "Create enum 'Foo'" "true"
class Test{
fun doSth(){
Foo::class.java
}
}
<caret>enum class Foo {
}
@@ -0,0 +1,6 @@
// "Create interface 'Foo'" "true"
class Test{
fun doSth(){
<caret>Foo::class.java
}
}
@@ -0,0 +1,10 @@
// "Create interface 'Foo'" "true"
class Test{
fun doSth(){
Foo::class.java
}
}
<caret>interface Foo {
}
@@ -0,0 +1,6 @@
// "Create object 'Foo'" "true"
class Test{
fun doSth(){
<caret>Foo::class.java
}
}
@@ -0,0 +1,10 @@
// "Create object 'Foo'" "true"
class Test{
fun doSth(){
Foo::class.java
}
}
<caret>object Foo {
}