From: chibash Date: Tue, 14 Nov 2017 18:46:02 +0000 (+0900) Subject: adds Modifier#isVarArgs() X-Git-Tag: rel_3_23_0_ga~6 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=a64f57f489c4a60dc20d26b34164991181223f21;p=javassist.git adds Modifier#isVarArgs() --- diff --git a/javassist.jar b/javassist.jar index 823d1cc9..9ae3c4bd 100644 Binary files a/javassist.jar and b/javassist.jar differ diff --git a/src/main/javassist/Modifier.java b/src/main/javassist/Modifier.java index 3ee34643..fd73c3b3 100644 --- a/src/main/javassist/Modifier.java +++ b/src/main/javassist/Modifier.java @@ -169,6 +169,14 @@ public class Modifier { return (mod & STRICT) != 0; } + /** + * Returns true if the modifiers include the varargs + * (variable number of arguments) modifier. + */ + public static boolean isVarArgs(int mod) { + return (mod & VARARGS) != 0; + } + /** * Truns the public bit on. The protected and private bits are * cleared. diff --git a/src/test/javassist/JvstTest5.java b/src/test/javassist/JvstTest5.java index 346263cb..e7fdb28c 100644 --- a/src/test/javassist/JvstTest5.java +++ b/src/test/javassist/JvstTest5.java @@ -393,4 +393,10 @@ public class JvstTest5 extends JvstTestRoot { private InnerClassesAttribute getInnerClassAttr(CtClass cc) { return (InnerClassesAttribute)cc.getClassFile2().getAttribute(InnerClassesAttribute.tag); } + + public void testVarArgsModifier() throws Exception { + CtClass cc = sloader.get("test5.VarArgsMethod"); + assertTrue(Modifier.isVarArgs(cc.getDeclaredMethod("foo").getModifiers())); + assertFalse(Modifier.isVarArgs(cc.getDeclaredMethod("bar").getModifiers())); + } }