Daniel Sun created GROOVY-8611:
----------------------------------
Summary: Refine the generics presentation
Key: GROOVY-8611
URL: https://issues.apache.org/jira/browse/GROOVY-8611
Project: Groovy
Issue Type: Improvement
Reporter: Daniel Sun
Nested generics should be shown as well, see the TODO in the following code:
{code:java}
class Groovy8609Bug extends CompilableTestSupport {
void testUpperBoundWithGenericsThroughWrongType2() {
def errMsg = shouldFail '''
@groovy.transform.CompileStatic
public class A<T extends List<E>, E extends Map<String, Integer>> {
E getFirstRecord(T recordList) {
return recordList.get(0)
}
static void main(args) {
def list = new ArrayList<HashMap<String, Long>>()
def record = new HashMap<String, Long>()
list.add(record)
def a = new A<ArrayList<HashMap<String, Integer>>,
HashMap<String, Integer>>()
assert record.is(a.getFirstRecord(list))
}
}
'''
// TODO we should print generics details, e.g. [Static type checking] -
Cannot call A <ArrayList, HashMap<String, Integer>>#getFirstRecord(T) with
arguments [java.util.ArrayList <HashMap<String, Long>>]
assert errMsg.contains('[Static type checking] - Cannot call A
<ArrayList, HashMap>#getFirstRecord(T) with arguments [java.util.ArrayList
<HashMap>]')
}
}
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)