Skip to content

Commit e933467

Browse files
committed
Update JavaParser Modifier conversion to handle change to use list of modifier nodes instead of an EnumSet in their API
1 parent bbe83aa commit e933467

File tree

2 files changed

+38
-29
lines changed

2 files changed

+38
-29
lines changed

src/main/java/dev/minco/javatransformer/api/AccessFlags.java

Lines changed: 36 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -38,65 +38,74 @@ public AccessFlags(@AccessFlagsConstant int access) {
3838
this.access = access;
3939
}
4040

41-
public AccessFlags(EnumSet<Modifier> modifiers) {
41+
public AccessFlags(Iterable<Modifier> modifiers) {
4242
this(accessFor(modifiers));
4343
}
4444

4545
@AccessFlagsConstant
46-
private static int accessFor(EnumSet<Modifier> modifiers) {
46+
private static int accessFor(Iterable<Modifier> modifiers) {
47+
val modifierSet = EnumSet.noneOf(Modifier.Keyword.class);
48+
for (Modifier modifier : modifiers) {
49+
modifierSet.add(modifier.getKeyword());
50+
}
51+
return accessFor(modifierSet);
52+
}
53+
54+
@AccessFlagsConstant
55+
private static int accessFor(EnumSet<Modifier.Keyword> modifiers) {
4756
int access = 0;
48-
if (modifiers.contains(Modifier.PUBLIC))
57+
if (modifiers.contains(Modifier.Keyword.PUBLIC))
4958
access |= ACC_PUBLIC;
50-
if (modifiers.contains(Modifier.PRIVATE))
59+
if (modifiers.contains(Modifier.Keyword.PRIVATE))
5160
access |= ACC_PRIVATE;
52-
if (modifiers.contains(Modifier.PROTECTED))
61+
if (modifiers.contains(Modifier.Keyword.PROTECTED))
5362
access |= ACC_PROTECTED;
54-
if (modifiers.contains(Modifier.STATIC))
63+
if (modifiers.contains(Modifier.Keyword.STATIC))
5564
access |= ACC_STATIC;
56-
if (modifiers.contains(Modifier.FINAL))
65+
if (modifiers.contains(Modifier.Keyword.FINAL))
5766
access |= ACC_FINAL;
58-
if (modifiers.contains(Modifier.SYNCHRONIZED))
67+
if (modifiers.contains(Modifier.Keyword.SYNCHRONIZED))
5968
access |= ACC_SYNCHRONIZED;
60-
if (modifiers.contains(Modifier.VOLATILE))
69+
if (modifiers.contains(Modifier.Keyword.VOLATILE))
6170
access |= ACC_VOLATILE;
62-
if (modifiers.contains(Modifier.TRANSIENT))
71+
if (modifiers.contains(Modifier.Keyword.TRANSIENT))
6372
access |= ACC_TRANSIENT;
64-
if (modifiers.contains(Modifier.NATIVE))
73+
if (modifiers.contains(Modifier.Keyword.NATIVE))
6574
access |= ACC_NATIVE;
66-
if (modifiers.contains(Modifier.ABSTRACT))
75+
if (modifiers.contains(Modifier.Keyword.ABSTRACT))
6776
access |= ACC_ABSTRACT;
68-
if (modifiers.contains(Modifier.STRICTFP))
77+
if (modifiers.contains(Modifier.Keyword.STRICTFP))
6978
access |= ACC_STRICT;
7079
return access;
7180
}
7281

73-
public EnumSet<Modifier> toJavaParserModifierSet() {
74-
val modifiers = new ArrayList<Modifier>();
82+
public Modifier.Keyword[] toJavaParserModifierSet() {
83+
val modifiers = new ArrayList<Modifier.Keyword>();
7584

7685
if (has(ACC_PUBLIC))
77-
modifiers.add(Modifier.PUBLIC);
86+
modifiers.add(Modifier.Keyword.PUBLIC);
7887
if (has(ACC_PRIVATE))
79-
modifiers.add(Modifier.PRIVATE);
88+
modifiers.add(Modifier.Keyword.PRIVATE);
8089
if (has(ACC_PROTECTED))
81-
modifiers.add(Modifier.PROTECTED);
90+
modifiers.add(Modifier.Keyword.PROTECTED);
8291
if (has(ACC_STATIC))
83-
modifiers.add(Modifier.STATIC);
92+
modifiers.add(Modifier.Keyword.STATIC);
8493
if (has(ACC_FINAL))
85-
modifiers.add(Modifier.FINAL);
94+
modifiers.add(Modifier.Keyword.FINAL);
8695
if (has(ACC_SYNCHRONIZED))
87-
modifiers.add(Modifier.SYNCHRONIZED);
96+
modifiers.add(Modifier.Keyword.SYNCHRONIZED);
8897
if (has(ACC_VOLATILE))
89-
modifiers.add(Modifier.VOLATILE);
98+
modifiers.add(Modifier.Keyword.VOLATILE);
9099
if (has(ACC_TRANSIENT))
91-
modifiers.add(Modifier.TRANSIENT);
100+
modifiers.add(Modifier.Keyword.TRANSIENT);
92101
if (has(ACC_NATIVE))
93-
modifiers.add(Modifier.NATIVE);
102+
modifiers.add(Modifier.Keyword.NATIVE);
94103
if (has(ACC_ABSTRACT))
95-
modifiers.add(Modifier.ABSTRACT);
104+
modifiers.add(Modifier.Keyword.ABSTRACT);
96105
if (has(ACC_STRICT))
97-
modifiers.add(Modifier.STRICTFP);
106+
modifiers.add(Modifier.Keyword.STRICTFP);
98107

99-
return EnumSet.copyOf(modifiers);
108+
return modifiers.toArray(new Modifier.Keyword[0]);
100109
}
101110

102111
@Override

src/main/java/dev/minco/javatransformer/internal/ClassPaths.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333

3434
import org.jetbrains.annotations.NotNull;
3535

36-
import com.github.javaparser.JavaParser;
36+
import com.github.javaparser.StaticJavaParser;
3737
import com.github.javaparser.ast.CompilationUnit;
3838

3939
import dev.minco.javatransformer.api.ClassInfo;
@@ -150,7 +150,7 @@ private void findPaths(String entryName, Supplier<InputStream> iss) {
150150
}
151151

152152
private void findJavaPaths(InputStream is) {
153-
val parsed = JavaParser.parse(is);
153+
val parsed = StaticJavaParser.parse(is);
154154
findJavaPaths(parsed);
155155
}
156156

0 commit comments

Comments
 (0)