< prev index next > test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesInLocalClassTest.java
Print this page
/*
* @test
* @bug 8042251
* @summary Testing InnerClasses_attribute of inner classes in local class.
* @library /tools/lib /tools/javac/lib ../lib
+ * @enablePreview
* @modules java.base/jdk.internal.classfile.impl
* jdk.compiler/com.sun.tools.javac.api
* jdk.compiler/com.sun.tools.javac.main
+ * @enablePreview
* @build toolbox.ToolBox InMemoryFileManager TestResult TestBase
* @build InnerClassesTestBase
* @run main InnerClassesInLocalClassTest
*/
public InnerClassesInLocalClassTest() {
innerClassesData = new ArrayList<>();
for (Modifier outerModifier : LOCAL_CLASS_MODIFIERS) {
StringBuilder sb = new StringBuilder();
sb.append(outerModifier.getString()).append(' ');
! sb.append("class Local {");
Map<String, Set<String>> class2Flags = new HashMap<>();
for (int i = 0; i < LOCAL_CLASS_MODIFIERS.length; ++i) {
Modifier innerModifier = LOCAL_CLASS_MODIFIERS[i];
sb.append(innerModifier.getString()).append(' ')
.append("class").append(' ')
public InnerClassesInLocalClassTest() {
innerClassesData = new ArrayList<>();
for (Modifier outerModifier : LOCAL_CLASS_MODIFIERS) {
StringBuilder sb = new StringBuilder();
sb.append(outerModifier.getString()).append(' ');
! sb.append("class Local { int f; "); // impose identity to make testing predictable.
Map<String, Set<String>> class2Flags = new HashMap<>();
for (int i = 0; i < LOCAL_CLASS_MODIFIERS.length; ++i) {
Modifier innerModifier = LOCAL_CLASS_MODIFIERS[i];
sb.append(innerModifier.getString()).append(' ')
.append("class").append(' ')
return list;
}
private Set<String> getFlags(Modifier modifier) {
HashSet<String> set = new HashSet<>();
+ set.add("ACC_IDENTITY");
if (modifier != Modifier.EMPTY) {
set.add("ACC_" + modifier.getString().toUpperCase());
}
return set;
}
< prev index next >