LLDB  mainline
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
lldb_private::DebugMacroEntry Class Reference

#include <DebugMacros.h>

Collaboration diagram for lldb_private::DebugMacroEntry:
Collaboration graph
[legend]

Public Types

enum  EntryType : uint8_t {
  INVALID, DEFINE, UNDEF, START_FILE,
  END_FILE, INDIRECT
}
 

Public Member Functions

 DebugMacroEntry ()
 
 ~DebugMacroEntry ()=default
 
EntryType GetType () const
 
uint64_t GetLineNumber () const
 
ConstString GetMacroString () const
 
const FileSpecGetFileSpec (CompileUnit *comp_unit) const
 
DebugMacrosGetIndirectDebugMacros () const
 

Static Public Member Functions

static DebugMacroEntry CreateDefineEntry (uint32_t line, const char *str)
 
static DebugMacroEntry CreateUndefEntry (uint32_t line, const char *str)
 
static DebugMacroEntry CreateStartFileEntry (uint32_t line, uint32_t debug_line_file_idx)
 
static DebugMacroEntry CreateEndFileEntry ()
 
static DebugMacroEntry CreateIndirectEntry (const DebugMacrosSP &debug_macros_sp)
 

Private Member Functions

 DebugMacroEntry (EntryType type, uint32_t line, uint32_t debug_line_file_idx, const char *str)
 
 DebugMacroEntry (EntryType type, const DebugMacrosSP &debug_macros_sp)
 

Private Attributes

uint32_t m_type: 3
 
uint32_t m_line: 29
 
uint32_t m_debug_line_file_idx
 
ConstString m_str
 
DebugMacrosSP m_debug_macros_sp
 

Detailed Description

Definition at line 24 of file DebugMacros.h.

Member Enumeration Documentation

◆ EntryType

Enumerator
INVALID 
DEFINE 
UNDEF 
START_FILE 
END_FILE 
INDIRECT 

Definition at line 26 of file DebugMacros.h.

Constructor & Destructor Documentation

◆ DebugMacroEntry() [1/3]

lldb_private::DebugMacroEntry::DebugMacroEntry ( )
inline

◆ ~DebugMacroEntry()

lldb_private::DebugMacroEntry::~DebugMacroEntry ( )
default

◆ DebugMacroEntry() [2/3]

DebugMacroEntry::DebugMacroEntry ( EntryType  type,
uint32_t  line,
uint32_t  debug_line_file_idx,
const char *  str 
)
private

Definition at line 15 of file DebugMacros.cpp.

◆ DebugMacroEntry() [3/3]

DebugMacroEntry::DebugMacroEntry ( EntryType  type,
const DebugMacrosSP debug_macros_sp 
)
private

Definition at line 20 of file DebugMacros.cpp.

Member Function Documentation

◆ CreateDefineEntry()

DebugMacroEntry DebugMacroEntry::CreateDefineEntry ( uint32_t  line,
const char *  str 
)
static

Definition at line 29 of file DebugMacros.cpp.

References DebugMacroEntry(), and DEFINE.

Referenced by DWARFDebugMacroEntry::ReadMacroEntries().

◆ CreateEndFileEntry()

DebugMacroEntry DebugMacroEntry::CreateEndFileEntry ( )
static

Definition at line 46 of file DebugMacros.cpp.

References DebugMacroEntry(), and END_FILE.

Referenced by DWARFDebugMacroEntry::ReadMacroEntries().

◆ CreateIndirectEntry()

DebugMacroEntry DebugMacroEntry::CreateIndirectEntry ( const DebugMacrosSP debug_macros_sp)
static

Definition at line 51 of file DebugMacros.cpp.

References DebugMacroEntry(), and INDIRECT.

Referenced by DWARFDebugMacroEntry::ReadMacroEntries().

◆ CreateStartFileEntry()

DebugMacroEntry DebugMacroEntry::CreateStartFileEntry ( uint32_t  line,
uint32_t  debug_line_file_idx 
)
static

Definition at line 40 of file DebugMacros.cpp.

References DebugMacroEntry(), and START_FILE.

Referenced by DWARFDebugMacroEntry::ReadMacroEntries().

◆ CreateUndefEntry()

DebugMacroEntry DebugMacroEntry::CreateUndefEntry ( uint32_t  line,
const char *  str 
)
static

Definition at line 34 of file DebugMacros.cpp.

References DebugMacroEntry(), and UNDEF.

Referenced by DWARFDebugMacroEntry::ReadMacroEntries().

◆ GetFileSpec()

const FileSpec & DebugMacroEntry::GetFileSpec ( CompileUnit comp_unit) const

Definition at line 25 of file DebugMacros.cpp.

References lldb_private::CompileUnit::GetSupportFiles(), and m_debug_line_file_idx.

Referenced by AddMacros().

◆ GetIndirectDebugMacros()

DebugMacros* lldb_private::DebugMacroEntry::GetIndirectDebugMacros ( ) const
inline

Definition at line 54 of file DebugMacros.h.

References m_debug_macros_sp.

Referenced by AddMacros().

◆ GetLineNumber()

uint64_t lldb_private::DebugMacroEntry::GetLineNumber ( ) const
inline

Definition at line 48 of file DebugMacros.h.

References m_line.

Referenced by AddMacros().

◆ GetMacroString()

ConstString lldb_private::DebugMacroEntry::GetMacroString ( ) const
inline

Definition at line 50 of file DebugMacros.h.

References m_str.

Referenced by AddMacros().

◆ GetType()

EntryType lldb_private::DebugMacroEntry::GetType ( ) const
inline

Definition at line 46 of file DebugMacros.h.

References m_type.

Referenced by AddMacros().

Member Data Documentation

◆ m_debug_line_file_idx

uint32_t lldb_private::DebugMacroEntry::m_debug_line_file_idx
private

Definition at line 66 of file DebugMacros.h.

Referenced by GetFileSpec().

◆ m_debug_macros_sp

DebugMacrosSP lldb_private::DebugMacroEntry::m_debug_macros_sp
private

Definition at line 68 of file DebugMacros.h.

Referenced by GetIndirectDebugMacros().

◆ m_line

uint32_t lldb_private::DebugMacroEntry::m_line
private

Definition at line 65 of file DebugMacros.h.

Referenced by GetLineNumber().

◆ m_str

ConstString lldb_private::DebugMacroEntry::m_str
private

Definition at line 67 of file DebugMacros.h.

Referenced by GetMacroString().

◆ m_type

uint32_t lldb_private::DebugMacroEntry::m_type
private

Definition at line 64 of file DebugMacros.h.

Referenced by GetType().


The documentation for this class was generated from the following files: