2943 return buf.reverse(); |
2943 return buf.reverse(); |
2944 } |
2944 } |
2945 public Type capture(Type t) { |
2945 public Type capture(Type t) { |
2946 if (t.tag != CLASS) |
2946 if (t.tag != CLASS) |
2947 return t; |
2947 return t; |
|
2948 if (t.getEnclosingType() != Type.noType) { |
|
2949 Type capturedEncl = capture(t.getEnclosingType()); |
|
2950 if (capturedEncl != t.getEnclosingType()) { |
|
2951 Type type1 = memberType(capturedEncl, t.tsym); |
|
2952 t = subst(type1, t.tsym.type.getTypeArguments(), t.getTypeArguments()); |
|
2953 } |
|
2954 } |
2948 ClassType cls = (ClassType)t; |
2955 ClassType cls = (ClassType)t; |
2949 if (cls.isRaw() || !cls.isParameterized()) |
2956 if (cls.isRaw() || !cls.isParameterized()) |
2950 return cls; |
2957 return cls; |
2951 |
2958 |
2952 ClassType G = (ClassType)cls.asElement().asType(); |
2959 ClassType G = (ClassType)cls.asElement().asType(); |