42 jint _flags;
43
44 ciFlags() { _flags = 0; }
45 ciFlags(AccessFlags flags) { _flags = flags.as_int(); }
46
47 public:
48 // Java access flags
49 bool is_public () const { return (_flags & JVM_ACC_PUBLIC ) != 0; }
50 bool is_private () const { return (_flags & JVM_ACC_PRIVATE ) != 0; }
51 bool is_protected () const { return (_flags & JVM_ACC_PROTECTED ) != 0; }
52 bool is_static () const { return (_flags & JVM_ACC_STATIC ) != 0; }
53 bool is_final () const { return (_flags & JVM_ACC_FINAL ) != 0; }
54 bool is_synchronized () const { return (_flags & JVM_ACC_SYNCHRONIZED ) != 0; }
55 bool is_super () const { return (_flags & JVM_ACC_SUPER ) != 0; }
56 bool is_volatile () const { return (_flags & JVM_ACC_VOLATILE ) != 0; }
57 bool is_transient () const { return (_flags & JVM_ACC_TRANSIENT ) != 0; }
58 bool is_native () const { return (_flags & JVM_ACC_NATIVE ) != 0; }
59 bool is_interface () const { return (_flags & JVM_ACC_INTERFACE ) != 0; }
60 bool is_abstract () const { return (_flags & JVM_ACC_ABSTRACT ) != 0; }
61 bool is_stable () const { return (_flags & JVM_ACC_FIELD_STABLE ) != 0; }
62 // In case the current object represents a field, return true if
63 // the field is modified outside of instance initializer methods
64 // (or class/initializer methods if the field is static) and false
65 // otherwise.
66 bool has_initialized_final_update() const { return (_flags & JVM_ACC_FIELD_INITIALIZED_FINAL_UPDATE) != 0; };
67
68 // Conversion
69 jint as_int() { return _flags; }
70
71 void print_klass_flags(outputStream* st = tty);
72 void print_member_flags(outputStream* st = tty);
73 void print(outputStream* st = tty);
74 };
75
76 #endif // SHARE_CI_CIFLAGS_HPP
|
42 jint _flags;
43
44 ciFlags() { _flags = 0; }
45 ciFlags(AccessFlags flags) { _flags = flags.as_int(); }
46
47 public:
48 // Java access flags
49 bool is_public () const { return (_flags & JVM_ACC_PUBLIC ) != 0; }
50 bool is_private () const { return (_flags & JVM_ACC_PRIVATE ) != 0; }
51 bool is_protected () const { return (_flags & JVM_ACC_PROTECTED ) != 0; }
52 bool is_static () const { return (_flags & JVM_ACC_STATIC ) != 0; }
53 bool is_final () const { return (_flags & JVM_ACC_FINAL ) != 0; }
54 bool is_synchronized () const { return (_flags & JVM_ACC_SYNCHRONIZED ) != 0; }
55 bool is_super () const { return (_flags & JVM_ACC_SUPER ) != 0; }
56 bool is_volatile () const { return (_flags & JVM_ACC_VOLATILE ) != 0; }
57 bool is_transient () const { return (_flags & JVM_ACC_TRANSIENT ) != 0; }
58 bool is_native () const { return (_flags & JVM_ACC_NATIVE ) != 0; }
59 bool is_interface () const { return (_flags & JVM_ACC_INTERFACE ) != 0; }
60 bool is_abstract () const { return (_flags & JVM_ACC_ABSTRACT ) != 0; }
61 bool is_stable () const { return (_flags & JVM_ACC_FIELD_STABLE ) != 0; }
62 bool has_vararg () const { return (_flags & JVM_ACC_VARARGS ) != 0; }
63 // In case the current object represents a field, return true if
64 // the field is modified outside of instance initializer methods
65 // (or class/initializer methods if the field is static) and false
66 // otherwise.
67 bool has_initialized_final_update() const { return (_flags & JVM_ACC_FIELD_INITIALIZED_FINAL_UPDATE) != 0; };
68
69 // Conversion
70 jint as_int() { return _flags; }
71
72 void print_klass_flags(outputStream* st = tty);
73 void print_member_flags(outputStream* st = tty);
74 void print(outputStream* st = tty);
75 };
76
77 #endif // SHARE_CI_CIFLAGS_HPP
|