package net.bytebuddy.test.scope;
public class EnclosingType {
public static final Class<?> INNER = Bar.class;
public static final Class<?> NESTED = BarBaz.class;
@SuppressWarnings("deprecation")
public static final Class<?> DEPRECATED = DeprecatedClass.class;
public static final Class<?> FINAL_INNER = FinalBar.class;
public static final Class<?> FINAL_NESTED = FinalBarBaz.class;
public static final Class<?> PRIVATE_INNER = PrivateBar.class;
public static final Class<?> PRIVATE_NESTED = PrivateBarBaz.class;
public static final Class<?> PACKAGE_INNER = PackageBar.class;
public static final Class<?> PACKAGE_NESTED = PackageBarBaz.class;
public static final Class<?> PROTECTED_INNER = ProtectedBar.class;
public static final Class<?> PROTECTED_NESTED = ProtectedBarBaz.class;
public static final Class<?> ANONYMOUS_INITIALIZER;
public static final Class<?> LOCAL_INITIALIZER;
public static final Class<?> ANONYMOUS_METHOD = anonymousStatic();
public static final Class<?> LOCAL_METHOD = localStatic();
static {
ANONYMOUS_INITIALIZER = new Object() {
/* empty*/
}.getClass();
class Foo {
/* empty */
}
LOCAL_INITIALIZER = Foo.class;
}
private static Class<?> anonymousStatic() {
return new Object() {
/* empty */
}.getClass();
}
private static Class<?> localStatic() {
class FooBar {
/* empty */
}
return FooBar.class;
}
public class Bar {
/* empty */
}
public static class BarBaz {
/* empty */
}
public final class FinalBar {
/* empty */
}
public static final class FinalBarBaz {
/* empty */
}
private class PrivateBar {
/* empty */
}
private static class PrivateBarBaz {
/* empty */
}
class PackageBar {
/* empty */
}
static class PackageBarBaz {
/* empty */
}
protected class ProtectedBar {
/* empty */
}
protected static class ProtectedBarBaz {
/* empty */
}
@Deprecated
class DeprecatedClass {
/* empty */
}
public final Class<?> localConstructor;
public final Class<?> anonymousConstructor;
public final Class<?> localMethod;
public final Class<?> anonymousMethod;
public EnclosingType() {
class Qux {
/* empty */
}
localConstructor = Qux.class;
anonymousConstructor = new Object() {
/* empty */
}.getClass();
localMethod = local();
anonymousMethod = anonymous();
}
private Class<?> local() {
class Baz{
/* empty */
}
return Baz.class;
}
private Class<?> anonymous() {
return new Object() {
/* empty */
}.getClass();
}
}