am c3c97d1d: AI 149620: mkstubs should ignore all the methods/fields/classes with default access. External bug: http://code.google.com/p/android/issues/detail?id=2806 BUG=1901455

Merge commit 'c3c97d1db391f4e400343fd69be11c8b1f951ff3' into donut

* commit 'c3c97d1db391f4e400343fd69be11c8b1f951ff3':
  AI 149620: mkstubs should ignore all the methods/fields/classes with default access.
This commit is contained in:
Xavier Ducrohet
2009-06-08 11:16:44 -07:00
committed by The Android Open Source Project

View File

@@ -26,7 +26,7 @@ import org.objectweb.asm.Opcodes;
/**
* A class visitor that filters out all members (fields, methods and inner classes) that are
* either private or rejected by the {@link Filter}.
* either private, default-access or rejected by the {@link Filter}.
*/
class FilterClassAdapter extends ClassAdapter {
@@ -64,8 +64,8 @@ class FilterClassAdapter extends ClassAdapter {
@Override
public FieldVisitor visitField(int access, String name, String desc,
String signature, Object value) {
// exclude private fields
if ((access & Opcodes.ACC_PRIVATE) != 0) {
// only accept public/protected fields
if ((access & (Opcodes.ACC_PUBLIC | Opcodes.ACC_PROTECTED)) == 0) {
return null;
}
@@ -96,8 +96,8 @@ class FilterClassAdapter extends ClassAdapter {
public MethodVisitor visitMethod(int access, String name, String desc,
String signature, String[] exceptions) {
// exclude private methods
if ((access & Opcodes.ACC_PRIVATE) != 0) {
// only accept public/protected methods
if ((access & (Opcodes.ACC_PUBLIC | Opcodes.ACC_PROTECTED)) == 0) {
return null;
}
@@ -139,8 +139,8 @@ class FilterClassAdapter extends ClassAdapter {
@Override
public void visitInnerClass(String name, String outerName, String innerName, int access) {
// exclude private methods
if ((access & Opcodes.ACC_PRIVATE) != 0) {
// only accept public/protected inner classes
if ((access & (Opcodes.ACC_PUBLIC | Opcodes.ACC_PROTECTED)) == 0) {
return;
}