Merge pull request #358 from bigfatbrowncat/avian-pack

Tiny fix in Class.getClassType()
This commit is contained in:
Joshua Warner 2014-10-11 20:46:06 -06:00
commit d063ea0ef3
2 changed files with 18 additions and 2 deletions

View File

@ -539,7 +539,7 @@ public final class Class <T>
if (skipDigits == chars.length) {
return ClassType.ANONYMOUS;
} else if (skipDigits > dollar + 1) {
} else if (skipDigits == dollar + 1) {
return ClassType.MEMBER;
} else {
return ClassType.LOCAL;

View File

@ -98,15 +98,31 @@ public class Reflection {
expect(1 == args.length);
expect(args[0] == String.class);
}
public static void throwOOME() {
throw new OutOfMemoryError();
}
public static void classType() throws Exception {
// Class types
expect(!Reflection.class.isAnonymousClass());
expect(!Reflection.class.isLocalClass());
expect(!Reflection.class.isMemberClass());
expect(Reflection.Hello.class.isMemberClass());
Cloneable anonymousLocal = new Cloneable() {};
expect(anonymousLocal.getClass().isAnonymousClass());
class NamedLocal {}
expect(NamedLocal.class.isLocalClass());
}
public static void main(String[] args) throws Exception {
innerClasses();
annotations();
genericType();
classType();
Class system = Class.forName("java.lang.System");
Field out = system.getDeclaredField("out");