Class: Rubycc::ObjFile::ELFReader::Symbol
- Inherits:
-
Struct
- Object
- Struct
- Rubycc::ObjFile::ELFReader::Symbol
- Defined in:
- lib/rubycc/objfile/elf_reader.rb
Overview
A parsed symbol table entry. bind/type/visibility are the decoded
symbolic forms; shndx is the raw st_shndx and section the Section it
names (nil for an undefined/absolute/common symbol). The predicates
distinguish the reserved st_shndx markers the writer emits.
Instance Attribute Summary collapse
-
#bind ⇒ Object
Returns the value of attribute bind.
-
#index ⇒ Object
Returns the value of attribute index.
-
#name ⇒ Object
Returns the value of attribute name.
-
#section ⇒ Object
Returns the value of attribute section.
-
#shndx ⇒ Object
Returns the value of attribute shndx.
-
#size ⇒ Object
Returns the value of attribute size.
-
#type ⇒ Object
Returns the value of attribute type.
-
#value ⇒ Object
Returns the value of attribute value.
-
#visibility ⇒ Object
Returns the value of attribute visibility.
Instance Method Summary collapse
- #absolute? ⇒ Boolean
- #common? ⇒ Boolean
-
#defined? ⇒ Boolean
Defined here means backed by a real section in this object (neither imported nor a reserved marker) — what "does this .so export printf?" asks of a dynamic symbol.
- #undefined? ⇒ Boolean
Instance Attribute Details
#bind ⇒ Object
Returns the value of attribute bind
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def bind @bind end |
#index ⇒ Object
Returns the value of attribute index
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def index @index end |
#name ⇒ Object
Returns the value of attribute name
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def name @name end |
#section ⇒ Object
Returns the value of attribute section
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def section @section end |
#shndx ⇒ Object
Returns the value of attribute shndx
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def shndx @shndx end |
#size ⇒ Object
Returns the value of attribute size
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def size @size end |
#type ⇒ Object
Returns the value of attribute type
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def type @type end |
#value ⇒ Object
Returns the value of attribute value
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def value @value end |
#visibility ⇒ Object
Returns the value of attribute visibility
181 182 183 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 181 def visibility @visibility end |
Instance Method Details
#absolute? ⇒ Boolean
186 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 186 def absolute? = shndx == SHN_ABS |
#common? ⇒ Boolean
187 188 189 190 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 187 def common? = shndx == SHN_COMMON # Defined here means backed by a real section in this object (neither # imported nor a reserved marker) — what "does this .so export printf?" # asks of a dynamic symbol. |
#defined? ⇒ Boolean
Defined here means backed by a real section in this object (neither imported nor a reserved marker) — what "does this .so export printf?" asks of a dynamic symbol.
191 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 191 def defined? = !undefined? && shndx < SHN_LORESERVE |
#undefined? ⇒ Boolean
185 |
# File 'lib/rubycc/objfile/elf_reader.rb', line 185 def undefined? = shndx == SHN_UNDEF |