gwt /
gwt /
dafaaeb4b9e20305a082f2a50ec1354845ffd8b9 The attached patch finishes up the Java 1.5 support in the TypeOracle. The patch makes the following changes:
* Implemented the functionality missing from the JDelegatingClassType subtypes.
* Enabled erasure and type parameter substitution for JRawType and JParameterizedType respectively. This means that List<Interger> is a full blown JClassType where every reference to its type parameter has been replaced with Integer.
* JParameterizedTypes and JWildcard types now have referential stability.
* Added test cases for the new functionality.
* Added support for enumerated types
* Implemented a wildcard capture type scheme that allows us to reasonably determine the set of subtypes of a parameterized type since this is technically an unbounded set. For example, the subtypes List<Integer> could actually be parameterized types like MyList<? extends Serializable, Integer> and so on.
* Fixes a bug in our Annotation proxy; we failed to implement the Annotation.annotationType() method.
* Fixed a problem with annotations. Specifically, JLS3 9.7, single element array values do not need curly braces
* Other minor issues with our JDT mapping
Issues outstanding:
* Subtype and assignability checks may still not deal with all of the corner cases.
* The TypeOracle's refresh logic needs to be update to properly flush generics and parameterized types are out of date.
Patch by: mmendez
Review by: scottb (TBR)
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@1523 8db76d5a-ed1c-0410-87a9-c151d255dfc7
51 files changed