LLDB mainline
BreakpadRecords.cpp File Reference
#include "Plugins/ObjectFile/Breakpad/BreakpadRecords.h"
#include "lldb/lldb-defines.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/Support/Endian.h"
#include "llvm/Support/FormatVariadic.h"
#include <optional>

Go to the source code of this file.

Functions

template<typename T>
static T stringTo (llvm::StringRef Str)
template<>
Token stringTo< Token > (llvm::StringRef Str)
template<>
llvm::Triple::OSType stringTo< llvm::Triple::OSType > (llvm::StringRef Str)
template<>
llvm::Triple::ArchType stringTo< llvm::Triple::ArchType > (llvm::StringRef Str)
template<typename T>
static T consume (llvm::StringRef &Str)
template<typename T>
static constexpr size_t hex_digits ()
 Return the number of hex digits needed to encode an (POD) object of a given type.
static UUID parseModuleId (llvm::Triple::OSType os, llvm::StringRef str)
template<typename T>
static std::optional< T > parseNumberName (llvm::StringRef Line, Token TokenType)
static bool parsePublicOrFunc (llvm::StringRef Line, bool &Multiple, lldb::addr_t &Address, lldb::addr_t *Size, lldb::addr_t &ParamSize, llvm::StringRef &Name)

Function Documentation

◆ consume()

◆ hex_digits()

template<typename T>
constexpr size_t hex_digits ( )
staticconstexpr

Return the number of hex digits needed to encode an (POD) object of a given type.

Definition at line 95 of file BreakpadRecords.cpp.

Referenced by parseModuleId().

◆ parseModuleId()

UUID parseModuleId ( llvm::Triple::OSType os,
llvm::StringRef str )
static

◆ parseNumberName()

template<typename T>
std::optional< T > parseNumberName ( llvm::StringRef Line,
Token TokenType )
static

◆ parsePublicOrFunc()

bool parsePublicOrFunc ( llvm::StringRef Line,
bool & Multiple,
lldb::addr_t & Address,
lldb::addr_t * Size,
lldb::addr_t & ParamSize,
llvm::StringRef & Name )
static

◆ stringTo()

template<typename T>
T stringTo ( llvm::StringRef Str)
static

Referenced by consume().

◆ stringTo< llvm::Triple::ArchType >()

template<>
llvm::Triple::ArchType stringTo< llvm::Triple::ArchType > ( llvm::StringRef Str)

Definition at line 69 of file BreakpadRecords.cpp.

◆ stringTo< llvm::Triple::OSType >()

template<>
llvm::Triple::OSType stringTo< llvm::Triple::OSType > ( llvm::StringRef Str)

Definition at line 59 of file BreakpadRecords.cpp.

◆ stringTo< Token >()

template<>
Token stringTo< Token > ( llvm::StringRef Str)

Definition at line 41 of file BreakpadRecords.cpp.

Referenced by lldb_private::breakpad::StackCFIRecord::parse().