kohiro / gwt-ent

Automatically exported from code.google.com/p/gwt-ent
0 stars 0 forks source link

HashMap interface list is missing Map #45

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1.  Create class as such:
@Reflect_Full
public class ReflectionPopulator {

    Collection<?> collection;
    List<?> list = new ArrayList<String>();
    ArrayList<?> arrayList;
    Set<?> set;
    Map<?, ?> map = new HashMap<String, String>();
    HashMap<?, ?> hashMap;
}
2.  Compile and run.

What is the expected output? What do you see instead?
ArrayList correctly gets List, Cloneable, Serializable (although should 
theoretically also have Iterable and RandomAccess)
Set correctly gets Collection (although should theoretically have Iterable too)
HashMap on the other hand only gets Cloneable and Serializable and not Map.

What version of the product are you using? On what operating system?
1.0RC1 on Windows 7 and Gentoo Linux.

Please provide any additional information below.
At a minimum I would think that these would also already have reflection 
information generated for them.  If I don't have it this way and I don't 
reference Collection anywhere else there is an @Reflect* annotation, List also 
does not list Collection as one of its interfaces.  This does kind of break 
things especially when you have a class that mimics Class.isAssignableFrom by 
checking superinterfaces and superclasses against another class (i.e. in this 
case using List.class and all its interfaces against Collection.class).

Original issue reported on code.google.com by ke...@kjordan.net on 8 Apr 2011 at 4:01