class DWARFDebugLine::SectionParser

Declaration

class DWARFDebugLine::SectionParser { /* full declaration omitted */ };

Description

Helper to allow for parsing of an entire .debug_line section in sequence.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:317

Method Overview

  • public SectionParser(llvm::DWARFDataExtractor & Data, const llvm::DWARFContext & C, llvm::DWARFDebugLine::SectionParser::cu_range CUs, llvm::DWARFDebugLine::SectionParser::tu_range TUs)
  • public bool done() const
  • public uint64_t getOffset() const
  • public llvm::DWARFDebugLine::LineTable parseNext(function_ref<void (llvm::Error)> RecoverableErrorCallback, function_ref<void (llvm::Error)> UnrecoverableErrorCallback, llvm::raw_ostream * OS = nullptr)
  • public void skip(function_ref<void (llvm::Error)> ErrorCallback)

Methods

SectionParser(
    llvm::DWARFDataExtractor& Data,
    const llvm::DWARFContext& C,
    llvm::DWARFDebugLine::SectionParser::cu_range
        CUs,
    llvm::DWARFDebugLine::SectionParser::tu_range
        TUs)

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:323

Parameters

llvm::DWARFDataExtractor& Data
const llvm::DWARFContext& C
llvm::DWARFDebugLine::SectionParser::cu_range CUs
llvm::DWARFDebugLine::SectionParser::tu_range TUs

bool done() const

Description

Indicates if the parser has parsed as much as possible.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:352

uint64_t getOffset() const

Description

Get the offset the parser has reached.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:355

llvm::DWARFDebugLine::LineTable parseNext(
    function_ref<void(llvm::Error)>
        RecoverableErrorCallback,
    function_ref<void(llvm::Error)>
        UnrecoverableErrorCallback,
    llvm::raw_ostream* OS = nullptr)

Description

Get the next line table from the section. Report any issues via the callbacks.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:336

Parameters

function_ref<void(llvm::Error)> RecoverableErrorCallback
- any issues that don't prevent further parsing of the table will be reported through this callback.
function_ref<void(llvm::Error)> UnrecoverableErrorCallback
- any issues that prevent further parsing of the table will be reported through this callback.
llvm::raw_ostream* OS = nullptr
- if not null, the parser will print information about the table as it parses it.

void skip(
    function_ref<void(llvm::Error)> ErrorCallback)

Description

Skip the current line table and go to the following line table (if present) immediately.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h:346

Parameters

function_ref<void(llvm::Error)> ErrorCallback
- report any prologue parsing issues via this callback.