add explicit type parameters available for conditional expr (IDEA-1179)

This commit is contained in:
anna
2012-02-17 21:38:34 +01:00
parent 0ff1e1201c
commit 8e7b3a443c
16 changed files with 297 additions and 1 deletions
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
static <T> List<T> f() { return new ArrayList<T>(); }
void someMethod(boolean b) {
List<String> s = b ? Test.<String>f() : f();
}
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
<T> List<T> f() { return new ArrayList<T>(); }
void someMethod(boolean b) {
List<String> s = b ? this.<String>f() : new ArrayList<String>();
}
}
@@ -0,0 +1,13 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
void someMethod(boolean b) {
List<String> s = b ? Foo.<String>f() : new ArrayList<String>();
}
}
class Foo{
static <T> List<T> f() { return new ArrayList<T>(); }
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
<T> List<T> f() { return new ArrayList<T>(); }
void someMethod(Test t, boolean b) {
List<String> s = b ? t.<String>f() : new ArrayList<String>();
}
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
static <T> List<T> f() { return new ArrayList<T>(); }
void someMethod(Test t, boolean b) {
List<String> s = b ? t.<String>f() : new ArrayList<String>();
}
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
static <T> List<T> f() { return new ArrayList<T>(); }
void someMethod(boolean b) {
List<String> s = b ? Test.<String>f() : new ArrayList<String>();
}
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
static <T> List<T> f() { return new ArrayList<T>(); }
void someMethod(boolean b) {
List<String> s = b ? f<caret>() : f();
}
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
<T> List<T> f() { return new ArrayList<T>(); }
void someMethod(boolean b) {
List<String> s = b ? f<caret>() : new ArrayList<String>();
}
}
@@ -0,0 +1,13 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
void someMethod(boolean b) {
List<String> s = b ? Foo.f<caret>() : new ArrayList<String>();
}
}
class Foo{
static <T> List<T> f() { return new ArrayList<T>(); }
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
<T> List<T> f() { return new ArrayList<T>(); }
void someMethod(Test t, boolean b) {
List<String> s = b ? t.f<caret>() : new ArrayList<String>();
}
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
static <T> List<T> f() { return new ArrayList<T>(); }
void someMethod(Test t, boolean b) {
List<String> s = b ? t.f<caret>() : new ArrayList<String>();
}
}
@@ -0,0 +1,9 @@
// "Add explicit type arguments" "true"
import java.util.*;
class Test {
static <T> List<T> f() { return new ArrayList<T>(); }
void someMethod(boolean b) {
List<String> s = b ? f<caret>() : new ArrayList<String>();
}
}