Skip to content

Commit dae5bd2

Browse files
authored
feature: add CtModifiable#isTransient and related methods (#3670)
1 parent 06ad7f0 commit dae5bd2

File tree

12 files changed

+308
-19
lines changed

12 files changed

+308
-19
lines changed

src/main/java/spoon/reflect/declaration/CtModifiable.java

+30
Original file line numberDiff line numberDiff line change
@@ -117,4 +117,34 @@ public interface CtModifiable extends CtElement {
117117
*/
118118
@DerivedProperty
119119
boolean isAbstract();
120+
121+
/**
122+
* Returns true if it contains a transient modifier (see {@link #hasModifier(ModifierKind)})
123+
*/
124+
@DerivedProperty
125+
boolean isTransient();
126+
127+
/**
128+
* Returns true if it contains a volatile modifier (see {@link #hasModifier(ModifierKind)})
129+
*/
130+
@DerivedProperty
131+
boolean isVolatile();
132+
133+
/**
134+
* Returns true if it contains a synchronized modifier (see {@link #hasModifier(ModifierKind)})
135+
*/
136+
@DerivedProperty
137+
boolean isSynchronized();
138+
139+
/**
140+
* Returns true if it contains a native modifier (see {@link #hasModifier(ModifierKind)})
141+
*/
142+
@DerivedProperty
143+
boolean isNative();
144+
145+
/**
146+
* Returns true if it contains a strictfp modifier (see {@link #hasModifier(ModifierKind)})
147+
*/
148+
@DerivedProperty
149+
boolean isStrictfp();
120150
}

src/main/java/spoon/support/reflect/CtModifierHandler.java

+20
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,26 @@ public boolean isFinal() {
155155
return getModifiers().contains(ModifierKind.FINAL);
156156
}
157157

158+
public boolean isTransient() {
159+
return getModifiers().contains(ModifierKind.TRANSIENT);
160+
}
161+
162+
public boolean isVolatile() {
163+
return getModifiers().contains(ModifierKind.VOLATILE);
164+
}
165+
166+
public boolean isSynchronized() {
167+
return getModifiers().contains(ModifierKind.SYNCHRONIZED);
168+
}
169+
170+
public boolean isNative() {
171+
return getModifiers().contains(ModifierKind.NATIVE);
172+
}
173+
174+
public boolean isStrictfp() {
175+
return getModifiers().contains(ModifierKind.STRICTFP);
176+
}
177+
158178
@Override
159179
public int hashCode() {
160180
return getModifiers().hashCode();

src/main/java/spoon/support/reflect/code/CtCatchVariableImpl.java

+25
Original file line numberDiff line numberDiff line change
@@ -263,4 +263,29 @@ public boolean isStatic() {
263263
public boolean isAbstract() {
264264
return this.modifierHandler.isAbstract();
265265
}
266+
267+
@Override
268+
public boolean isTransient() {
269+
return this.modifierHandler.isTransient();
270+
}
271+
272+
@Override
273+
public boolean isVolatile() {
274+
return this.modifierHandler.isVolatile();
275+
}
276+
277+
@Override
278+
public boolean isSynchronized() {
279+
return this.modifierHandler.isSynchronized();
280+
}
281+
282+
@Override
283+
public boolean isNative() {
284+
return this.modifierHandler.isNative();
285+
}
286+
287+
@Override
288+
public boolean isStrictfp() {
289+
return this.modifierHandler.isStrictfp();
290+
}
266291
}

src/main/java/spoon/support/reflect/code/CtLocalVariableImpl.java

+25
Original file line numberDiff line numberDiff line change
@@ -240,4 +240,29 @@ public boolean isStatic() {
240240
public boolean isAbstract() {
241241
return this.modifierHandler.isAbstract();
242242
}
243+
244+
@Override
245+
public boolean isTransient() {
246+
return this.modifierHandler.isTransient();
247+
}
248+
249+
@Override
250+
public boolean isVolatile() {
251+
return this.modifierHandler.isVolatile();
252+
}
253+
254+
@Override
255+
public boolean isSynchronized() {
256+
return this.modifierHandler.isSynchronized();
257+
}
258+
259+
@Override
260+
public boolean isNative() {
261+
return this.modifierHandler.isNative();
262+
}
263+
264+
@Override
265+
public boolean isStrictfp() {
266+
return this.modifierHandler.isStrictfp();
267+
}
243268
}

src/main/java/spoon/support/reflect/declaration/CtAnonymousExecutableImpl.java

+25
Original file line numberDiff line numberDiff line change
@@ -208,4 +208,29 @@ public boolean isStatic() {
208208
public boolean isAbstract() {
209209
return this.modifierHandler.isAbstract();
210210
}
211+
212+
@Override
213+
public boolean isTransient() {
214+
return this.modifierHandler.isTransient();
215+
}
216+
217+
@Override
218+
public boolean isVolatile() {
219+
return this.modifierHandler.isVolatile();
220+
}
221+
222+
@Override
223+
public boolean isSynchronized() {
224+
return this.modifierHandler.isSynchronized();
225+
}
226+
227+
@Override
228+
public boolean isNative() {
229+
return this.modifierHandler.isNative();
230+
}
231+
232+
@Override
233+
public boolean isStrictfp() {
234+
return this.modifierHandler.isStrictfp();
235+
}
211236
}

src/main/java/spoon/support/reflect/declaration/CtConstructorImpl.java

+25
Original file line numberDiff line numberDiff line change
@@ -224,4 +224,29 @@ public boolean isStatic() {
224224
public boolean isAbstract() {
225225
return this.modifierHandler.isAbstract();
226226
}
227+
228+
@Override
229+
public boolean isTransient() {
230+
return this.modifierHandler.isTransient();
231+
}
232+
233+
@Override
234+
public boolean isVolatile() {
235+
return this.modifierHandler.isVolatile();
236+
}
237+
238+
@Override
239+
public boolean isSynchronized() {
240+
return this.modifierHandler.isSynchronized();
241+
}
242+
243+
@Override
244+
public boolean isNative() {
245+
return this.modifierHandler.isNative();
246+
}
247+
248+
@Override
249+
public boolean isStrictfp() {
250+
return this.modifierHandler.isStrictfp();
251+
}
227252
}

src/main/java/spoon/support/reflect/declaration/CtFieldImpl.java

+25
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,31 @@ public boolean isAbstract() {
211211
return this.modifierHandler.isAbstract();
212212
}
213213

214+
@Override
215+
public boolean isTransient() {
216+
return this.modifierHandler.isTransient();
217+
}
218+
219+
@Override
220+
public boolean isVolatile() {
221+
return this.modifierHandler.isVolatile();
222+
}
223+
224+
@Override
225+
public boolean isSynchronized() {
226+
return this.modifierHandler.isSynchronized();
227+
}
228+
229+
@Override
230+
public boolean isNative() {
231+
return this.modifierHandler.isNative();
232+
}
233+
234+
@Override
235+
public boolean isStrictfp() {
236+
return this.modifierHandler.isStrictfp();
237+
}
238+
214239
@Override
215240
public boolean isPartOfJointDeclaration() {
216241
if (this.getPosition() instanceof NoSourcePosition) {

src/main/java/spoon/support/reflect/declaration/CtMethodImpl.java

+25
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,31 @@ public boolean isAbstract() {
263263
return this.modifierHandler.isAbstract();
264264
}
265265

266+
@Override
267+
public boolean isTransient() {
268+
return this.modifierHandler.isTransient();
269+
}
270+
271+
@Override
272+
public boolean isVolatile() {
273+
return this.modifierHandler.isVolatile();
274+
}
275+
276+
@Override
277+
public boolean isSynchronized() {
278+
return this.modifierHandler.isSynchronized();
279+
}
280+
281+
@Override
282+
public boolean isNative() {
283+
return this.modifierHandler.isNative();
284+
}
285+
286+
@Override
287+
public boolean isStrictfp() {
288+
return this.modifierHandler.isStrictfp();
289+
}
290+
266291
@Override
267292
public CtMethod<?> copyMethod() {
268293
return Refactoring.copyMethod(this);

src/main/java/spoon/support/reflect/declaration/CtParameterImpl.java

+25
Original file line numberDiff line numberDiff line change
@@ -224,4 +224,29 @@ public boolean isStatic() {
224224
public boolean isAbstract() {
225225
return this.modifierHandler.isAbstract();
226226
}
227+
228+
@Override
229+
public boolean isTransient() {
230+
return this.modifierHandler.isTransient();
231+
}
232+
233+
@Override
234+
public boolean isVolatile() {
235+
return this.modifierHandler.isVolatile();
236+
}
237+
238+
@Override
239+
public boolean isSynchronized() {
240+
return this.modifierHandler.isSynchronized();
241+
}
242+
243+
@Override
244+
public boolean isNative() {
245+
return this.modifierHandler.isNative();
246+
}
247+
248+
@Override
249+
public boolean isStrictfp() {
250+
return this.modifierHandler.isStrictfp();
251+
}
227252
}

src/main/java/spoon/support/reflect/declaration/CtTypeImpl.java

+25
Original file line numberDiff line numberDiff line change
@@ -985,6 +985,31 @@ public boolean isAbstract() {
985985
return this.modifierHandler.isAbstract();
986986
}
987987

988+
@Override
989+
public boolean isTransient() {
990+
return this.modifierHandler.isTransient();
991+
}
992+
993+
@Override
994+
public boolean isSynchronized() {
995+
return this.modifierHandler.isSynchronized();
996+
}
997+
998+
@Override
999+
public boolean isNative() {
1000+
return this.modifierHandler.isNative();
1001+
}
1002+
1003+
@Override
1004+
public boolean isStrictfp() {
1005+
return this.modifierHandler.isStrictfp();
1006+
}
1007+
1008+
@Override
1009+
public boolean isVolatile() {
1010+
return this.modifierHandler.isVolatile();
1011+
}
1012+
9881013
@Override
9891014
public CtType<?> copyType() {
9901015
return Refactoring.copyType(this);

0 commit comments

Comments
 (0)