Class: JavaClass::AccessFlags
- Inherits:
-
Object
- Object
- JavaClass::AccessFlags
- Defined in:
- lib/javaclass/access_flags.rb
Overview
The access flags of a class or interface.
- Author
-
Peter Kofler
Constant Summary collapse
- ACC_PUBLIC =
Access flags as defined by JVM spec.
0x0001
- ACC_FINAL =
0x0010
- ACC_SUPER =
old invokespecial instruction semantics
0x0020
- ACC_INTERFACE =
0x0200
- ACC_ABSTRACT =
0x0400
- ACC_OTHER =
0xffff ^ ACC_PUBLIC ^ ACC_FINAL ^ ACC_SUPER ^ ACC_INTERFACE ^ ACC_ABSTRACT
Instance Method Summary collapse
- #abstract? ⇒ Boolean
- #final? ⇒ Boolean
-
#initialize(data, pos) ⇒ AccessFlags
constructor
A new instance of AccessFlags.
- #interface? ⇒ Boolean
-
#public? ⇒ Boolean
(also: #accessible?)
Return
true
if the class is public.
Constructor Details
#initialize(data, pos) ⇒ AccessFlags
Returns a new instance of AccessFlags.
17 18 19 20 21 22 |
# File 'lib/javaclass/access_flags.rb', line 17 def initialize(data, pos) @flags = data.u2(pos) raise "inconsistent flags #{flags}" if abstract? && final? raise "inconsistent flags #{flags}" if interface? && (!abstract? || final?) raise "inconsistent flags #{flags}" if (@flags & ACC_OTHER) != 0 end |
Instance Method Details
#abstract? ⇒ Boolean
34 35 36 |
# File 'lib/javaclass/access_flags.rb', line 34 def abstract? (@flags & ACC_ABSTRACT) != 0 end |
#final? ⇒ Boolean
30 31 32 |
# File 'lib/javaclass/access_flags.rb', line 30 def final? (@flags & ACC_FINAL) != 0 end |
#interface? ⇒ Boolean
38 39 40 |
# File 'lib/javaclass/access_flags.rb', line 38 def interface? (@flags & ACC_INTERFACE) != 0 end |
#public? ⇒ Boolean Also known as: accessible?
Return true
if the class is public.
25 26 27 |
# File 'lib/javaclass/access_flags.rb', line 25 def public? (@flags & ACC_PUBLIC) != 0 end |