Enum object::SectionKind
source · #[non_exhaustive]pub enum SectionKind {
Show 18 variants
Unknown,
Text,
Data,
ReadOnlyData,
ReadOnlyDataWithRel,
ReadOnlyString,
UninitializedData,
Common,
Tls,
UninitializedTls,
TlsVariables,
OtherString,
Other,
Debug,
Linker,
Note,
Metadata,
Elf(u32),
}
Expand description
The kind of a section.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Unknown
The section kind is unknown.
Text
An executable code section.
Example ELF sections: .text
Example Mach-O sections: __TEXT/__text
Data
A data section.
Example ELF sections: .data
Example Mach-O sections: __DATA/__data
ReadOnlyData
A read only data section.
Example ELF sections: .rodata
Example Mach-O sections: __TEXT/__const
, __DATA/__const
, __TEXT/__literal4
ReadOnlyDataWithRel
A read only data section with relocations.
This is the same as either Data
or ReadOnlyData
, depending on the file format.
This value is only used in the API for writing files. It is never returned when reading files.
ReadOnlyString
A loadable string section.
Example ELF sections: .rodata.str
Example Mach-O sections: __TEXT/__cstring
UninitializedData
An uninitialized data section.
Example ELF sections: .bss
Example Mach-O sections: __DATA/__bss
Common
An uninitialized common data section.
Example Mach-O sections: __DATA/__common
Tls
A TLS data section.
Example ELF sections: .tdata
Example Mach-O sections: __DATA/__thread_data
UninitializedTls
An uninitialized TLS data section.
Example ELF sections: .tbss
Example Mach-O sections: __DATA/__thread_bss
TlsVariables
A TLS variables section.
This contains TLS variable structures, rather than the variable initializers.
Example Mach-O sections: __DATA/__thread_vars
OtherString
A non-loadable string section.
Example ELF sections: .comment
, .debug_str
Other
Some other non-loadable section.
Example ELF sections: .debug_info
Debug
Debug information.
Example Mach-O sections: __DWARF/__debug_info
Linker
Information for the linker.
Example COFF sections: .drectve
Note
ELF note section.
Metadata
Metadata such as symbols or relocations.
Example ELF sections: .symtab
, .strtab
, .group
Elf(u32)
Some other ELF section type.
This is the sh_type
field in the section header.
The meaning may be dependent on the architecture.
Implementations§
Trait Implementations§
source§impl Clone for SectionKind
impl Clone for SectionKind
source§fn clone(&self) -> SectionKind
fn clone(&self) -> SectionKind
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for SectionKind
impl Debug for SectionKind
source§impl Hash for SectionKind
impl Hash for SectionKind
source§impl PartialEq<SectionKind> for SectionKind
impl PartialEq<SectionKind> for SectionKind
source§fn eq(&self, other: &SectionKind) -> bool
fn eq(&self, other: &SectionKind) -> bool
self
and other
values to be equal, and is used
by ==
.