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); }
@Override public boolean isPublic(Object o) { if (o == null) { return false; } if (o instanceof ClassFile) { return AccessFlag.isPublic(((ClassFile) o).getAccessFlags()); } if (o instanceof MethodInfo) { return AccessFlag.isPublic(((MethodInfo) o).getAccessFlags()); } if (o instanceof FieldInfo) { return AccessFlag.isPublic(((FieldInfo) o).getAccessFlags()); } return false; }
public String getMethodModifier(MethodInfo method) { int accessFlags = method.getAccessFlags(); return isPrivate(accessFlags) ? "private" : isProtected(accessFlags) ? "protected" : isPublic(accessFlags) ? "public" : ""; }
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); }
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); }
public static Field getField(Class<?> clazz, String name) throws NoSuchFieldException { if (!ClassDataStore.instance().isClassReplaced(clazz)) { return clazz.getField(name); } ClassData cd = ClassDataStore.instance().getModifiedClassData(clazz.getClassLoader(), Descriptor.toJvmName(clazz.getName())); if (cd == null) { return clazz.getField(name); } FieldData fd = cd.getField(name); if (fd == null) { return clazz.getField(name); } if (!AccessFlag.isPublic(fd.getAccessFlags())) { throw new NoSuchFieldException(clazz.getName() + "." + name); } switch (fd.getMemberType()) { case NORMAL: return clazz.getField(name); case FAKE: try { Class<?> c = clazz.getClassLoader().loadClass(fd.getClassName()); return c.getField(name); } catch (NoSuchFieldException e) { throw e; } catch (Exception e) { throw new RuntimeException(e); } } throw new NoSuchFieldException(); }
public static boolean downgradeVisibility(int n, int o) { if (AccessFlag.isPrivate(n) && !AccessFlag.isPrivate(o)) { return true; } if (AccessFlag.isPublic(o) && !AccessFlag.isPublic(n)) { return true; } if (AccessFlag.isProtected(o) != AccessFlag.isProtected(n)) { return true; } if (AccessFlag.isPackage(o) != AccessFlag.isPackage(n)) { return true; } return false; }
case FAKE: try { if (!AccessFlag.isPublic(md.getAccessFlags())) { throw new NoSuchMethodException(clazz.getName() + "." + name);
for (MethodData i : cta.getMethods()) { if (i.isConstructor()) { if (i.getType() == MemberType.FAKE_CONSTRUCTOR && AccessFlag.isPublic(i.getAccessFlags())) { Class<?> c = clazz.getClassLoader().loadClass(i.getClassName()); visible.add(i.getConstructor(c));
if (cta.isReplaceable()) { for (MethodData i : cta.getMethods()) { if (i.getType() == MemberType.FAKE && AccessFlag.isPublic(i.getAccessFlags())) { Class<?> c = clazz.getClassLoader().loadClass(i.getClassName()); visible.add(i.getMethod(c));
while (cta != null) { for (FieldData i : cta.getFields()) { if (i.getMemberType() == MemberType.FAKE && AccessFlag.isPublic(i.getAccessFlags())) { Class<?> c = clazz.getClassLoader().loadClass(i.getClassName()); visible.add(i.getField(c));