Class: ELFTools::Dynamic::HashTable
- Inherits:
-
Object
- Object
- ELFTools::Dynamic::HashTable
- Defined in:
- lib/elftools/dynamic/hash_table.rb
Overview
A table of names the loader looks a symbol up in, instead of searching the symbol table for it.
A file records one of two kinds, or both of them. Both answer the same two questions, how far the symbol table they index reaches and which index a name sits at, and differ in how they are laid out, in how they hash a name, and in which symbols they index at all.
Defined Under Namespace
Instance Method Summary collapse
-
#covers_every_symbol? ⇒ Boolean
Whether the table is built over every symbol rather than over a subset of them.
-
#initialize(stream, offset, elf_class:, endian:) ⇒ HashTable
constructor
Instantiate a HashTable object.
Constructor Details
#initialize(stream, offset, elf_class:, endian:) ⇒ HashTable
Instantiate a ELFTools::Dynamic::HashTable object.
20 21 22 23 24 25 |
# File 'lib/elftools/dynamic/hash_table.rb', line 20 def initialize(stream, offset, elf_class:, endian:) @stream = stream @offset = offset @elf_class = elf_class @endian = endian end |
Instance Method Details
#covers_every_symbol? ⇒ Boolean
Whether the table is built over every symbol rather than over a subset of them.
Two things follow where it is. How many symbols it is built over is how many there are, rather than how far it reaches. And a name it does not lead to is not one the file records, so nothing is left to search.
34 35 36 |
# File 'lib/elftools/dynamic/hash_table.rb', line 34 def covers_every_symbol? false end |