325 * The {@code int} value representing the {@code abstract} 326 * modifier. 327 */ 328 public static final int ABSTRACT = 0x00000400; 329 330 /** 331 * The {@code int} value representing the {@code strictfp} 332 * modifier. 333 */ 334 public static final int STRICT = 0x00000800; 335 336 // Bits not (yet) exposed in the public API either because they 337 // have different meanings for fields and methods and there is no 338 // way to distinguish between the two in this class, or because 339 // they are not Java programming language keywords 340 static final int BRIDGE = 0x00000040; 341 static final int VARARGS = 0x00000080; 342 static final int SYNTHETIC = 0x00001000; 343 static final int ANNOTATION = 0x00002000; 344 static final int ENUM = 0x00004000; 345 static final int SYNTHESIZED = 0x00010000; 346 static boolean isSynthetic(int mod) { 347 return (mod & SYNTHETIC) != 0; 348 } 349 350 static boolean isSynthesized(int mod) { 351 return (mod & SYNTHESIZED) != 0; 352 } 353 354 /** 355 * See JLSv3 section 8.1.1. 356 */ 357 private static final int CLASS_MODIFIERS = 358 Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE | 359 Modifier.ABSTRACT | Modifier.STATIC | Modifier.FINAL | 360 Modifier.STRICT; 361 362 /** 363 * See JLSv3 section 9.1.1. 364 */ 365 private static final int INTERFACE_MODIFIERS = 366 Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE | 367 Modifier.ABSTRACT | Modifier.STATIC | Modifier.STRICT; 368 369 370 /** 371 * See JLSv3 section 8.8.3. | 325 * The {@code int} value representing the {@code abstract} 326 * modifier. 327 */ 328 public static final int ABSTRACT = 0x00000400; 329 330 /** 331 * The {@code int} value representing the {@code strictfp} 332 * modifier. 333 */ 334 public static final int STRICT = 0x00000800; 335 336 // Bits not (yet) exposed in the public API either because they 337 // have different meanings for fields and methods and there is no 338 // way to distinguish between the two in this class, or because 339 // they are not Java programming language keywords 340 static final int BRIDGE = 0x00000040; 341 static final int VARARGS = 0x00000080; 342 static final int SYNTHETIC = 0x00001000; 343 static final int ANNOTATION = 0x00002000; 344 static final int ENUM = 0x00004000; 345 static final int MANDATED = 0x00008000; 346 static boolean isSynthetic(int mod) { 347 return (mod & SYNTHETIC) != 0; 348 } 349 350 static boolean isMandated(int mod) { 351 return (mod & MANDATED) != 0; 352 } 353 354 /** 355 * See JLSv3 section 8.1.1. 356 */ 357 private static final int CLASS_MODIFIERS = 358 Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE | 359 Modifier.ABSTRACT | Modifier.STATIC | Modifier.FINAL | 360 Modifier.STRICT; 361 362 /** 363 * See JLSv3 section 9.1.1. 364 */ 365 private static final int INTERFACE_MODIFIERS = 366 Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE | 367 Modifier.ABSTRACT | Modifier.STATIC | Modifier.STRICT; 368 369 370 /** 371 * See JLSv3 section 8.8.3. |