/** * Returns the encoded modifiers of the field. * * @see Modifier */ public int getModifiers() { return AccessFlag.toModifier(fieldInfo.getAccessFlags()); }
/** * Returns the encoded modifiers of the field. * * @see Modifier */ @Override public int getModifiers() { return AccessFlag.toModifier(fieldInfo.getAccessFlags()); }
public boolean isPublic(Object o) { Integer accessFlags = o instanceof ClassFile ? ((ClassFile) o).getAccessFlags() : o instanceof FieldInfo ? ((FieldInfo) o).getAccessFlags() : o instanceof MethodInfo ? ((MethodInfo) o).getAccessFlags() : null; return accessFlags != null && AccessFlag.isPublic(accessFlags); }
public boolean isPublic(Object o) { Integer accessFlags = o instanceof ClassFile ? ((ClassFile) o).getAccessFlags() : o instanceof FieldInfo ? ((FieldInfo) o).getAccessFlags() : o instanceof MethodInfo ? ((MethodInfo) o).getAccessFlags() : null; return accessFlags != null && AccessFlag.isPublic(accessFlags); }
= src.fieldInfo.getAttributes().listIterator(); FieldInfo fi = fieldInfo; fi.setAccessFlags(src.fieldInfo.getAccessFlags()); ConstPool cp = fi.getConstPool(); while (iterator.hasNext()) {
for (int i = 0; i < n; ++i) { FieldInfo finfo = (FieldInfo)list.get(i); int acc = finfo.getAccessFlags(); out.println(Modifier.toString(AccessFlag.toModifier(acc)) + " " + finfo.getName() + "\t"
/** * Returns null if the field is accessible. Otherwise, it throws * an exception or it returns AccessorMaker if the field is a private * one declared in an enclosing class. */ private AccessorMaker isAccessibleField(CtField f, FieldInfo finfo) throws CompileError { if (AccessFlag.isPrivate(finfo.getAccessFlags()) && f.getDeclaringClass() != thisClass) { CtClass declClass = f.getDeclaringClass(); if (isEnclosing(declClass, thisClass)) { AccessorMaker maker = declClass.getAccessorMaker(); if (maker != null) return maker; else throw new CompileError("fatal error. bug?"); } else throw new CompileError("Field " + f.getName() + " in " + declClass.getName() + " is private."); } return null; // accessible field }
/** * Returns null if the field is accessible. Otherwise, it throws * an exception or it returns AccessorMaker if the field is a private * one declared in an enclosing class. */ private AccessorMaker isAccessibleField(CtField f, FieldInfo finfo) throws CompileError { if (AccessFlag.isPrivate(finfo.getAccessFlags()) && f.getDeclaringClass() != thisClass) { CtClass declClass = f.getDeclaringClass(); if (isEnclosing(declClass, thisClass)) { AccessorMaker maker = declClass.getAccessorMaker(); if (maker != null) return maker; } throw new CompileError("Field " + f.getName() + " in " + declClass.getName() + " is private."); } return null; // accessible field }
List<FieldInfo> fields = cf.getFields(); for (FieldInfo finfo:fields) { int acc = finfo.getAccessFlags(); out.println(Modifier.toString(AccessFlag.toModifier(acc)) + " " + finfo.getName() + "\t"
/** * Creates a copy of the given field. * The created field must be added to a class * with <code>CtClass.addField()</code>. * An initial value of the field is specified * by a <code>CtField.Initializer</code> object. * * <p>If getter and setter methods are needed, * call <code>CtNewMethod.getter()</code> and * <code>CtNewMethod.setter()</code>. * * @param src the original field * @param declaring the class to which the field will be added. * @see CtNewMethod#getter(String,CtField) * @see CtNewMethod#setter(String,CtField) * @see CtField.Initializer */ public CtField(CtField src, CtClass declaring) throws CannotCompileException { this(src.fieldInfo.getDescriptor(), src.fieldInfo.getName(), declaring); FieldInfo fi = fieldInfo; fi.setAccessFlags(src.fieldInfo.getAccessFlags()); ConstPool cp = fi.getConstPool(); List<AttributeInfo> attributes = src.fieldInfo.getAttributes(); for (AttributeInfo ainfo : attributes) fi.addAttribute(ainfo.copy(cp, null)); }
try { String fieldName = finfo.getName(); if ((finfo.getAccessFlags() & AccessFlag.STATIC) == 0) { code.addAload(0); code.addGetfield(Bytecode.THIS, fieldName, fieldType);
try { String fieldName = finfo.getName(); if ((finfo.getAccessFlags() & AccessFlag.STATIC) == 0) { code.addAload(0); code.addLoad(1, field.getType());
try { String fieldName = finfo.getName(); if ((finfo.getAccessFlags() & AccessFlag.STATIC) == 0) { code.addAload(0); code.addGetfield(Bytecode.THIS, fieldName, fieldType);
try { String fieldName = finfo.getName(); if ((finfo.getAccessFlags() & AccessFlag.STATIC) == 0) { code.addAload(0); code.addLoad(1, field.getType());
/** * Returns the encoded modifiers of the field. * * @see Modifier */ public int getModifiers() { return AccessFlag.toModifier(fieldInfo.getAccessFlags()); }
/** * Returns the encoded modifiers of the field. * * @see Modifier */ public int getModifiers() { return AccessFlag.toModifier(fieldInfo.getAccessFlags()); }
public JavassistEnumConstantDeclaration(CtField ctField, TypeSolver typeSolver) { if (ctField == null) { throw new IllegalArgumentException(); } if ((ctField.getFieldInfo2().getAccessFlags() & AccessFlag.ENUM) != 0) { throw new IllegalArgumentException("Trying to instantiate a JavassistEnumConstantDeclaration with something which is not an enum field: " + ctField.toString()); } this.ctField = ctField; this.typeSolver = typeSolver; }
public JavassistEnumConstantDeclaration(CtField ctField, TypeSolver typeSolver) { if (ctField == null) { throw new IllegalArgumentException(); } if ((ctField.getFieldInfo2().getAccessFlags() & AccessFlag.ENUM) == 0) { throw new IllegalArgumentException( "Trying to instantiate a JavassistEnumConstantDeclaration with something which is not an enum field: " + ctField.toString()); } this.ctField = ctField; this.typeSolver = typeSolver; }
@Override public List<ResolvedEnumConstantDeclaration> getEnumConstants() { return Arrays.stream(ctClass.getFields()) .filter(f -> (f.getFieldInfo2().getAccessFlags() & AccessFlag.ENUM) != 0) .map(f -> new JavassistEnumConstantDeclaration(f, typeSolver)) .collect(Collectors.toList()); } }
public boolean isPublic(Object o) { Integer accessFlags = o instanceof ClassFile ? ((ClassFile) o).getAccessFlags() : o instanceof FieldInfo ? ((FieldInfo) o).getAccessFlags() : o instanceof MethodInfo ? ((MethodInfo) o).getAccessFlags() : null; return accessFlags != null && AccessFlag.isPublic(accessFlags); }