1 //===-- SBSymbol.h ----------------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef LLDB_SBSymbol_h_
11 #define LLDB_SBSymbol_h_
13 #include "lldb/API/SBDefines.h"
14 #include "lldb/API/SBAddress.h"
15 #include "lldb/API/SBInstructionList.h"
16 #include "lldb/API/SBTarget.h"
28 SBSymbol (const lldb::SBSymbol &rhs);
30 const lldb::SBSymbol &
31 operator = (const lldb::SBSymbol &rhs);
41 GetMangledName () const;
43 lldb::SBInstructionList
44 GetInstructions (lldb::SBTarget target);
46 lldb::SBInstructionList
47 GetInstructions (lldb::SBTarget target, const char *flavor_string);
56 GetPrologueByteSize ();
62 operator == (const lldb::SBSymbol &rhs) const;
65 operator != (const lldb::SBSymbol &rhs) const;
68 GetDescription (lldb::SBStream &description);
70 //----------------------------------------------------------------------
71 // Returns true if the symbol is externally visible in the module that
73 //----------------------------------------------------------------------
77 //----------------------------------------------------------------------
78 // Returns true if the symbol was synthetically generated from something
79 // other than the actual symbol table itself in the object file.
80 //----------------------------------------------------------------------
86 lldb_private::Symbol *
90 reset (lldb_private::Symbol *);
93 friend class SBAddress;
95 friend class SBModule;
96 friend class SBSymbolContext;
98 SBSymbol (lldb_private::Symbol *lldb_object_ptr);
101 SetSymbol (lldb_private::Symbol *lldb_object_ptr);
103 lldb_private::Symbol *m_opaque_ptr;
109 #endif // LLDB_SBSymbol_h_