gimli::read

Type Alias StateMachine

Source
pub type StateMachine<R, Program, Offset> = LineRows<R, Program, Offset>;
👎Deprecated: StateMachine has been renamed to LineRows, use that instead.
Expand description

Deprecated. StateMachine has been renamed to LineRows.

Aliased Type§

struct StateMachine<R, Program, Offset> {
    program: Program,
    row: LineRow,
    instructions: LineInstructions<R>,
}

Fields§

§program: Program§row: LineRow§instructions: LineInstructions<R>

Implementations

Source§

impl<R, Program, Offset> LineRows<R, Program, Offset>
where Program: LineProgram<R, Offset>, R: Reader<Offset = Offset>, Offset: ReaderOffset,

Source

fn new( program: IncompleteLineProgram<R, Offset>, ) -> LineRows<R, IncompleteLineProgram<R, Offset>, Offset>

Source

fn resume<'program>( program: &'program CompleteLineProgram<R, Offset>, sequence: &LineSequence<R>, ) -> LineRows<R, &'program CompleteLineProgram<R, Offset>, Offset>

Source

pub fn header(&self) -> &LineProgramHeader<R, Offset>

Get a reference to the header for this state machine’s line number program.

Source

pub fn next_row( &mut self, ) -> Result<Option<(&LineProgramHeader<R, Offset>, &LineRow)>>

Parse and execute the next instructions in the line number program until another row in the line number matrix is computed.

The freshly computed row is returned as Ok(Some((header, row))). If the matrix is complete, and there are no more new rows in the line number matrix, then Ok(None) is returned. If there was an error parsing an instruction, then Err(e) is returned.

Unfortunately, the references mean that this cannot be a FallibleIterator.

Trait Implementations

Source§

impl<R, Program, Offset> Clone for LineRows<R, Program, Offset>
where Program: LineProgram<R, Offset> + Clone, R: Reader<Offset = Offset> + Clone, Offset: ReaderOffset + Clone,

Source§

fn clone(&self) -> LineRows<R, Program, Offset>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<R, Program, Offset> Debug for LineRows<R, Program, Offset>
where Program: LineProgram<R, Offset> + Debug, R: Reader<Offset = Offset> + Debug, Offset: ReaderOffset + Debug,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more