< prev index next >

src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedJavaFieldImpl.java

Print this page




 108     }
 109 
 110     @Override
 111     public HotSpotResolvedObjectTypeImpl getDeclaringClass() {
 112         return holder;
 113     }
 114 
 115     @Override
 116     public String getName() {
 117         return holder.createFieldInfo(index).getName();
 118     }
 119 
 120     @Override
 121     public JavaType getType() {
 122         // Pull field into local variable to prevent a race causing
 123         // a ClassCastException below
 124         JavaType currentType = type;
 125         if (currentType instanceof UnresolvedJavaType) {
 126             // Don't allow unresolved types to hang around forever
 127             UnresolvedJavaType unresolvedType = (UnresolvedJavaType) currentType;
 128             ResolvedJavaType resolved = unresolvedType.resolve(holder);
 129             if (resolved != null) {
 130                 type = resolved;
 131             }
 132         }
 133         return type;
 134     }
 135 
 136     @Override
 137     public int getOffset() {
 138         return offset;
 139     }
 140 
 141     @Override
 142     public String toString() {
 143         return format("HotSpotField<%H.%n %t:") + offset + ">";
 144     }
 145 
 146     @Override
 147     public boolean isSynthetic() {
 148         return (config().jvmAccSynthetic & modifiers) != 0;




 108     }
 109 
 110     @Override
 111     public HotSpotResolvedObjectTypeImpl getDeclaringClass() {
 112         return holder;
 113     }
 114 
 115     @Override
 116     public String getName() {
 117         return holder.createFieldInfo(index).getName();
 118     }
 119 
 120     @Override
 121     public JavaType getType() {
 122         // Pull field into local variable to prevent a race causing
 123         // a ClassCastException below
 124         JavaType currentType = type;
 125         if (currentType instanceof UnresolvedJavaType) {
 126             // Don't allow unresolved types to hang around forever
 127             UnresolvedJavaType unresolvedType = (UnresolvedJavaType) currentType;
 128             ResolvedJavaType resolved = holder.lookupType(unresolvedType, false);
 129             if (resolved != null) {
 130                 type = resolved;
 131             }
 132         }
 133         return type;
 134     }
 135 
 136     @Override
 137     public int getOffset() {
 138         return offset;
 139     }
 140 
 141     @Override
 142     public String toString() {
 143         return format("HotSpotField<%H.%n %t:") + offset + ">";
 144     }
 145 
 146     @Override
 147     public boolean isSynthetic() {
 148         return (config().jvmAccSynthetic & modifiers) != 0;


< prev index next >