@Override public Type getFieldType() { if (generatedField != null) { return generatedField.getFieldType(); } return _type; }
@Override public Type<?> getFieldType() { if (generatedField != null) { return generatedField.getFieldType(); } return _type; }
@Override public Type getFieldType() { if (generatedField != null) { return generatedField.getFieldType(); } return _type; }
@Override public boolean isEquivalentTo(final MemberInfo m) { return m instanceof FieldInfo && super.isEquivalentTo(m) && TypeUtils.areEquivalent(((FieldInfo) m).getFieldType(), getFieldType()); }
@Override public StringBuilder appendErasedSignature(final StringBuilder sb) { return getFieldType().appendErasedSignature(sb); } }
@Override public StringBuilder appendErasedSignature(final StringBuilder sb) { return getFieldType().appendErasedSignature(sb); } }
@Override public StringBuilder appendErasedSignature(final StringBuilder sb) { return getFieldType().appendErasedSignature(sb); } }
@Override public StringBuilder appendSignature(final StringBuilder sb) { return getFieldType().appendSignature(sb); }
@Override public StringBuilder appendSignature(final StringBuilder sb) { return getFieldType().appendSignature(sb); }
@Override public StringBuilder appendSignature(final StringBuilder sb) { return getFieldType().appendSignature(sb); }
public Void visit(final FieldInfo field, final MemberInfo scope) { // field.getDeclaringType().accept(this, scope); _frames.push(new VerifierFrame(FrameType.FIELD_SIGNATURE, field)); field.getFieldType().accept(this, scope); _frames.pop(); return null; }
@Override public StringBuilder appendErasedDescription(final StringBuilder sb) { StringBuilder s = sb; for (final javax.lang.model.element.Modifier modifier : Flags.asModifierSet(getModifiers())) { s.append(modifier.toString()); s.append(' '); } s = getFieldType().getErasedType().appendErasedDescription(s); s.append(' '); s.append(getName()); return s; }
@Override public StringBuilder appendErasedDescription(final StringBuilder sb) { StringBuilder s = sb; for (final javax.lang.model.element.Modifier modifier : Flags.asModifierSet(getModifiers())) { s.append(modifier.toString()); s.append(' '); } s = getFieldType().getErasedType().appendErasedDescription(s); s.append(' '); s.append(getName()); return s; }
@Override public FieldInfo visitField(final Type<?> declaringType, final FieldInfo field, final TypeBindings bindings) { final Type<?> oldFieldType = field.getFieldType(); final Type<?> newFieldType = visit(field.getFieldType(), bindings); if (TypeUtils.areEquivalent(oldFieldType, newFieldType) && TypeUtils.areEquivalent(field.getDeclaringType(), declaringType)) { return field; } return new ErasedField( field, declaringType, newFieldType ); }
@Override public StringBuilder appendErasedDescription(final StringBuilder sb) { StringBuilder s = sb; for (final javax.lang.model.element.Modifier modifier : Flags.asModifierSet(getModifiers())) { s.append(modifier.toString()); s.append(' '); } s = getFieldType().getErasedType().appendErasedDescription(s); s.append(' '); s.append(getName()); return s; }
@Override public StringBuilder appendBriefDescription(final StringBuilder sb) { StringBuilder s = sb; if (isStatic()) { s.append(Modifier.STATIC.toString()); s.append(' '); } final Type fieldType = getFieldType(); if (fieldType.isGenericParameter()) { s.append(fieldType.getName()); } else { s = fieldType.appendBriefDescription(s); } s.append(' '); s.append(getName()); return s; }
@Override public StringBuilder appendDescription(final StringBuilder sb) { StringBuilder s = sb; for (final javax.lang.model.element.Modifier modifier : Flags.asModifierSet(getModifiers())) { s.append(modifier.toString()); s.append(' '); } final Type fieldType = getFieldType(); if (fieldType.isGenericParameter()) { s.append(fieldType.getName()); } else { s = fieldType.appendBriefDescription(s); } s.append(' '); s.append(getName()); return s; }
@Override public StringBuilder appendDescription(final StringBuilder sb) { StringBuilder s = sb; for (final javax.lang.model.element.Modifier modifier : Flags.asModifierSet(getModifiers())) { s.append(modifier.toString()); s.append(' '); } final Type fieldType = getFieldType(); if (fieldType.isGenericParameter()) { s.append(fieldType.getName()); } else { s = fieldType.appendBriefDescription(s); } s.append(' '); s.append(getName()); return s; }
public FieldInfo visitField(final Type<?> declaringType, final FieldInfo field, final TypeBindings bindings) { final Type<?> oldFieldType = field.getFieldType(); final Type<?> newFieldType = visit(field.getFieldType(), bindings); if (TypeUtils.areEquivalent(oldFieldType, newFieldType) && TypeUtils.areEquivalent(field.getDeclaringType(), declaringType)) { return field; } return new ReflectedField( declaringType, field.getReflectedType(), field.getRawField(), newFieldType ); }
public void emit(final OpCode opCode, final FieldInfo field) { VerifyArgument.notNull(field, "field"); final MethodBuilder methodBuilder = this.methodBuilder; if (methodBuilder == null) { throw Error.bytecodeGeneratorNotOwnedByMethodBuilder(); } final int fieldToken = methodBuilder.getDeclaringType().getFieldToken(field); int stackChange = 0; if (opCode == OpCode.PUTFIELD || opCode == OpCode.PUTSTATIC) { stackChange -= stackSize(field.getFieldType()); } else { stackChange += stackSize(field.getFieldType()); } emit(opCode, (short)fieldToken); updateStackSize(opCode, stackChange); }