struct Debug::ELF

Overview

ELF reader.

Documentation:

Defined in:

Constant Summary

MAGIC = UInt8.slice(127, 'E'.ord, 'L'.ord, 'F'.ord)

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from struct Struct

==(other) : Bool ==, hash(hasher) hash, inspect(io : IO) : Nil inspect, pretty_print(pp) : Nil pretty_print, to_s(io) to_s

Instance methods inherited from struct Value

==(other) ==, dup dup

Instance methods inherited from class Object

!=(other) !=, !~(other) !~, ==(other) ==, ===(other : JSON::Any)
===(other : YAML::Any)
===(other)
===
, =~(other) =~, class class, dup dup, hash(hasher)
hash
hash
, inspect(io : IO)
inspect
inspect
, itself itself, not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, tap(&block) tap, to_json(io : IO)
to_json
to_json
, to_pretty_json(indent : String = " ")
to_pretty_json(io : IO, indent : String = " ")
to_pretty_json
, to_s
to_s(io : IO)
to_s
, to_yaml(io : IO)
to_yaml
to_yaml
, try(&block) try, unsafe_as(type : T.class) forall T unsafe_as

Constructor methods inherited from class Object

from_json(string_or_io, root : String) : self
from_json(string_or_io) : self
from_json
, from_yaml(string_or_io : String | IO) : self from_yaml

Constructor Detail

def self.new(io : IO::FileDescriptor) #

Class Method Detail

def self.open(path, &block) #

Instance Method Detail

def ehsize #

def ehsize=(ehsize : UInt16) #

def ehsize? : UInt16? #

def entry #

def entry=(entry : UInt32 | UInt64) #

def entry? : UInt32 | UInt64 | Nil #

def flags #

def flags=(flags : UInt32) #

def flags? : UInt32? #

def ident #

def ident? : Debug::ELF::Ident? #

def machine #

def machine=(machine : Machine) #

def machine? : Debug::ELF::Machine? #

def phentsize #

def phentsize=(phentsize : UInt16) #

def phentsize? : UInt16? #

def phnum #

def phnum=(phnum : UInt16) #

def phnum? : UInt16? #

def phoff #

def phoff=(phoff : UInt32 | UInt64) #

def phoff? : UInt32 | UInt64 | Nil #

def read_section?(name : String, &block) #

Searches for a section then yield the SectionHeader and the IO object ready for parsing if the section was found. Returns the valure returned by the block or nil if the section wasn't found.


def section_headers #

Parses and returns an Array of SectionHeader.


def sh_name(index) #

Returns the name of a section, using the SectionHeader#name index.


def shentsize #

def shentsize=(shentsize : UInt16) #

def shentsize? : UInt16? #

def shnum #

def shnum=(shnum : UInt16) #

def shnum? : UInt16? #

def shoff #

def shoff=(shoff : UInt32 | UInt64) #

def shoff? : UInt32 | UInt64 | Nil #

def shstrndx #

def shstrndx=(shstrndx : UInt16) #

def shstrndx? : UInt16? #

def type #

def type=(type : Type) #

def type? : Debug::ELF::Type? #

def version #

def version=(version : UInt32) #

def version? : UInt32? #