297 InterfaceMethodMask = ABSTRACT | STATIC | PUBLIC | STRICTFP | DEFAULT,
298 LocalVarFlags = FINAL | PARAMETER;
299
300
301 public static Set<Modifier> asModifierSet(long flags) {
302 Set<Modifier> modifiers = modifierSets.get(flags);
303 if (modifiers == null) {
304 modifiers = java.util.EnumSet.noneOf(Modifier.class);
305 if (0 != (flags & PUBLIC)) modifiers.add(Modifier.PUBLIC);
306 if (0 != (flags & PROTECTED)) modifiers.add(Modifier.PROTECTED);
307 if (0 != (flags & PRIVATE)) modifiers.add(Modifier.PRIVATE);
308 if (0 != (flags & ABSTRACT)) modifiers.add(Modifier.ABSTRACT);
309 if (0 != (flags & STATIC)) modifiers.add(Modifier.STATIC);
310 if (0 != (flags & FINAL)) modifiers.add(Modifier.FINAL);
311 if (0 != (flags & TRANSIENT)) modifiers.add(Modifier.TRANSIENT);
312 if (0 != (flags & VOLATILE)) modifiers.add(Modifier.VOLATILE);
313 if (0 != (flags & SYNCHRONIZED))
314 modifiers.add(Modifier.SYNCHRONIZED);
315 if (0 != (flags & NATIVE)) modifiers.add(Modifier.NATIVE);
316 if (0 != (flags & STRICTFP)) modifiers.add(Modifier.STRICTFP);
317 modifiers = Collections.unmodifiableSet(modifiers);
318 modifierSets.put(flags, modifiers);
319 }
320 return modifiers;
321 }
322
323 // Cache of modifier sets.
324 private static final Map<Long, Set<Modifier>> modifierSets =
325 new java.util.concurrent.ConcurrentHashMap<Long, Set<Modifier>>(64);
326
327 public static boolean isStatic(Symbol symbol) {
328 return (symbol.flags() & STATIC) != 0;
329 }
330
331 public static boolean isEnum(Symbol symbol) {
332 return (symbol.flags() & ENUM) != 0;
333 }
334
335 public static boolean isConstant(Symbol.VarSymbol symbol) {
336 return symbol.getConstValue() != null;
|
297 InterfaceMethodMask = ABSTRACT | STATIC | PUBLIC | STRICTFP | DEFAULT,
298 LocalVarFlags = FINAL | PARAMETER;
299
300
301 public static Set<Modifier> asModifierSet(long flags) {
302 Set<Modifier> modifiers = modifierSets.get(flags);
303 if (modifiers == null) {
304 modifiers = java.util.EnumSet.noneOf(Modifier.class);
305 if (0 != (flags & PUBLIC)) modifiers.add(Modifier.PUBLIC);
306 if (0 != (flags & PROTECTED)) modifiers.add(Modifier.PROTECTED);
307 if (0 != (flags & PRIVATE)) modifiers.add(Modifier.PRIVATE);
308 if (0 != (flags & ABSTRACT)) modifiers.add(Modifier.ABSTRACT);
309 if (0 != (flags & STATIC)) modifiers.add(Modifier.STATIC);
310 if (0 != (flags & FINAL)) modifiers.add(Modifier.FINAL);
311 if (0 != (flags & TRANSIENT)) modifiers.add(Modifier.TRANSIENT);
312 if (0 != (flags & VOLATILE)) modifiers.add(Modifier.VOLATILE);
313 if (0 != (flags & SYNCHRONIZED))
314 modifiers.add(Modifier.SYNCHRONIZED);
315 if (0 != (flags & NATIVE)) modifiers.add(Modifier.NATIVE);
316 if (0 != (flags & STRICTFP)) modifiers.add(Modifier.STRICTFP);
317 if (0 != (flags & DEFAULT)) modifiers.add(Modifier.DEFAULT);
318 modifiers = Collections.unmodifiableSet(modifiers);
319 modifierSets.put(flags, modifiers);
320 }
321 return modifiers;
322 }
323
324 // Cache of modifier sets.
325 private static final Map<Long, Set<Modifier>> modifierSets =
326 new java.util.concurrent.ConcurrentHashMap<Long, Set<Modifier>>(64);
327
328 public static boolean isStatic(Symbol symbol) {
329 return (symbol.flags() & STATIC) != 0;
330 }
331
332 public static boolean isEnum(Symbol symbol) {
333 return (symbol.flags() & ENUM) != 0;
334 }
335
336 public static boolean isConstant(Symbol.VarSymbol symbol) {
337 return symbol.getConstValue() != null;
|