class JavaClass::ClassFile::ClassMagic
The CAFEBABE
magic of a class file. This just checks if CAFEBABE is here.
- Author
-
Peter Kofler
Constants
- CAFE_BABE
Public Class Methods
new(data, start=0)
click to toggle source
Check the class magic in the data beginning at position start (which is usually 0).
# File lib/javaclass/classfile/class_magic.rb, line 13 def initialize(data, start=0) @bytes = data[start..start+3] end
Public Instance Methods
bytes()
click to toggle source
Return the value of the magic in this class.
# File lib/javaclass/classfile/class_magic.rb, line 23 def bytes @bytes.dup end
check(msg='invalid java class magic')
click to toggle source
Check if this magic is valid and raise an ClassFormatError
if not with an optional msg .
# File lib/javaclass/classfile/class_magic.rb, line 28 def check(msg='invalid java class magic') unless valid? raise(ClassFormatError, msg) end end
valid?()
click to toggle source
Return true
if the data was valid, i.e. if the class started with CAFEBABE
.
# File lib/javaclass/classfile/class_magic.rb, line 18 def valid? @bytes.same_bytes_as?(CAFE_BABE) end