Struct gimli::LineNumberProgramHeader
[−]
[src]
pub struct LineNumberProgramHeader<'input, Endian> where Endian: Endianity { /* fields omitted */ }
A header for a line number program in the .debug_line
section, as defined
in section 6.2.4 of the standard.
Methods
impl<'input, Endian> LineNumberProgramHeader<'input, Endian> where Endian: Endianity
[src]
fn unit_length(&self) -> u64
Return the length of the line number program and header, not including the length of the encoded length itself.
fn version(&self) -> u16
Get the version of this header's line program.
fn header_length(&self) -> u64
Get the length of the encoded line number program header, not including the length of the encoded length itself.
fn minimum_instruction_length(&self) -> u8
Get the minimum instruction length any opcode in this header's line program may have.
fn maximum_operations_per_instruction(&self) -> u8
Get the maximum number of operations each instruction in this header's line program may have.
fn default_is_stmt(&self) -> bool
Get the default value of the is_stmt
register for this header's line
program.
fn line_base(&self) -> i8
Get the line base for this header's line program.
fn line_range(&self) -> u8
Get the line range for this header's line program.
fn opcode_base(&self) -> u8
Get opcode base for this header's line program.
fn standard_opcode_lengths(&self) -> &'input [u8]
The byte lengths of each standard opcode in this header's line program.
fn include_directories(&self) -> &[&CStr]
Get the set of include directories for this header's line program.
The compilation's current directory is not included in the return value, but is implicitly considered to be in the set per spec.
fn directory(&self, directory: u64) -> Option<&'input CStr>
The include directory with the given directory index.
A directory index of 0 corresponds to the compilation unit directory.
fn file_names(&self) -> &[FileEntry]
Get the list of source files that appear in this header's line program.
fn file(&self, file: u64) -> Option<&FileEntry<'input>>
The source file with the given file index.
A file index of 0 corresponds to the compilation unit file.
fn opcodes(&self) -> OpcodesIter<'input, Endian>
Iterate over the opcodes in this header's line number program, parsing them as we go.
fn rows(self) -> StateMachine<'input, Endian>
Construct a new StateMachine
for executing line programs and
generating the line information matrix.
Trait Implementations
impl<'input, Endian: Clone> Clone for LineNumberProgramHeader<'input, Endian> where Endian: Endianity
[src]
fn clone(&self) -> LineNumberProgramHeader<'input, Endian>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<'input, Endian: Debug> Debug for LineNumberProgramHeader<'input, Endian> where Endian: Endianity
[src]
impl<'input, Endian: Eq> Eq for LineNumberProgramHeader<'input, Endian> where Endian: Endianity
[src]
impl<'input, Endian: PartialEq> PartialEq for LineNumberProgramHeader<'input, Endian> where Endian: Endianity
[src]
fn eq(&self, __arg_0: &LineNumberProgramHeader<'input, Endian>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &LineNumberProgramHeader<'input, Endian>) -> bool
This method tests for !=
.