src/share/classes/com/sun/tools/javac/code/Types.java

changeset 637
c655e0280bdc
parent 581
f2fdd52e4e87
child 640
995bcdb9a41d
equal deleted inserted replaced
636:a31c511db424 637:c655e0280bdc
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();

mercurial