in asm-util/src/main/java/org/objectweb/asm/util/ASMifier.java [1274:1429]
private void appendAccessFlags(final int accessFlags) {
boolean isEmpty = true;
if ((accessFlags & Opcodes.ACC_PUBLIC) != 0) {
stringBuilder.append("ACC_PUBLIC");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_PRIVATE) != 0) {
stringBuilder.append("ACC_PRIVATE");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_PROTECTED) != 0) {
stringBuilder.append("ACC_PROTECTED");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_FINAL) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_FINAL");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_STATIC) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_STATIC");
isEmpty = false;
}
if ((accessFlags & (Opcodes.ACC_SYNCHRONIZED | Opcodes.ACC_SUPER | Opcodes.ACC_TRANSITIVE))
!= 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
if ((accessFlags & ACCESS_CLASS) == 0) {
if ((accessFlags & ACCESS_MODULE) == 0) {
stringBuilder.append("ACC_SYNCHRONIZED");
} else {
stringBuilder.append("ACC_TRANSITIVE");
}
} else {
stringBuilder.append("ACC_SUPER");
}
isEmpty = false;
}
if ((accessFlags & (Opcodes.ACC_VOLATILE | Opcodes.ACC_BRIDGE | Opcodes.ACC_STATIC_PHASE))
!= 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
if ((accessFlags & ACCESS_FIELD) == 0) {
if ((accessFlags & ACCESS_MODULE) == 0) {
stringBuilder.append("ACC_BRIDGE");
} else {
stringBuilder.append("ACC_STATIC_PHASE");
}
} else {
stringBuilder.append("ACC_VOLATILE");
}
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_VARARGS) != 0
&& (accessFlags & (ACCESS_CLASS | ACCESS_FIELD)) == 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_VARARGS");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_TRANSIENT) != 0 && (accessFlags & ACCESS_FIELD) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_TRANSIENT");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_NATIVE) != 0
&& (accessFlags & (ACCESS_CLASS | ACCESS_FIELD)) == 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_NATIVE");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_ENUM) != 0
&& (accessFlags & (ACCESS_CLASS | ACCESS_FIELD | ACCESS_INNER)) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_ENUM");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_ANNOTATION) != 0
&& (accessFlags & (ACCESS_CLASS | ACCESS_INNER)) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_ANNOTATION");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_ABSTRACT) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_ABSTRACT");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_INTERFACE) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_INTERFACE");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_STRICT) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_STRICT");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_SYNTHETIC) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_SYNTHETIC");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_DEPRECATED) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_DEPRECATED");
isEmpty = false;
}
if ((accessFlags & Opcodes.ACC_RECORD) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
stringBuilder.append("ACC_RECORD");
isEmpty = false;
}
if ((accessFlags & (Opcodes.ACC_MANDATED | Opcodes.ACC_MODULE)) != 0) {
if (!isEmpty) {
stringBuilder.append(" | ");
}
if ((accessFlags & ACCESS_CLASS) == 0) {
stringBuilder.append("ACC_MANDATED");
} else {
stringBuilder.append("ACC_MODULE");
}
isEmpty = false;
}
if (isEmpty) {
stringBuilder.append('0');
}
}