blob: a2cec0ec73e109e216b3a6322a01c4f314f3485f [file] [log] [blame]
Johnny Chen349f0762011-07-19 01:07:06 +00001//===-- SWIG Interface for SBSymbol -----------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10namespace lldb {
11
12%feature("docstring",
13"Represents the symbol possibly associated with a stack frame.
14SBModule contains SBSymbol(s). SBSymbol can also be retrived from SBFrame.
15
16See also SBModule and SBFrame."
17) SBSymbol;
18class SBSymbol
19{
20public:
21
22 SBSymbol ();
23
24 ~SBSymbol ();
25
26 SBSymbol (const lldb::SBSymbol &rhs);
27
28 bool
29 IsValid () const;
30
31
32 const char *
33 GetName() const;
34
35 const char *
36 GetMangledName () const;
37
38 lldb::SBInstructionList
39 GetInstructions (lldb::SBTarget target);
40
Jim Ingham0f063ba2013-03-02 00:26:47 +000041 lldb::SBInstructionList
42 GetInstructions (lldb::SBTarget target, const char *flavor_string);
43
Johnny Chen349f0762011-07-19 01:07:06 +000044 SBAddress
45 GetStartAddress ();
46
47 SBAddress
48 GetEndAddress ();
49
50 uint32_t
51 GetPrologueByteSize ();
52
53 SymbolType
54 GetType ();
55
56 bool
57 GetDescription (lldb::SBStream &description);
Greg Clayton74ae3f52012-04-02 20:08:08 +000058
59 bool
60 IsExternal();
61
62 bool
63 IsSynthetic();
64
Greg Clayton6b2bd932012-02-01 08:09:32 +000065 %pythoncode %{
66 def get_instructions_from_current_target (self):
67 return self.GetInstructions (target)
68
69 __swig_getmethods__["name"] = GetName
Greg Clayton5ef31a92012-06-29 22:00:42 +000070 if _newclass: name = property(GetName, None, doc='''A read only property that returns the name for this symbol as a string.''')
Greg Clayton6b2bd932012-02-01 08:09:32 +000071
72 __swig_getmethods__["mangled"] = GetMangledName
Greg Clayton5ef31a92012-06-29 22:00:42 +000073 if _newclass: mangled = property(GetMangledName, None, doc='''A read only property that returns the mangled (linkage) name for this symbol as a string.''')
Greg Clayton6b2bd932012-02-01 08:09:32 +000074
75 __swig_getmethods__["type"] = GetType
Greg Clayton5ef31a92012-06-29 22:00:42 +000076 if _newclass: type = property(GetType, None, doc='''A read only property that returns an lldb enumeration value (see enumerations that start with "lldb.eSymbolType") that represents the type of this symbol.''')
Greg Clayton6b2bd932012-02-01 08:09:32 +000077
78 __swig_getmethods__["addr"] = GetStartAddress
Greg Clayton5ef31a92012-06-29 22:00:42 +000079 if _newclass: addr = property(GetStartAddress, None, doc='''A read only property that returns an lldb object that represents the start address (lldb.SBAddress) for this symbol.''')
Greg Clayton6b2bd932012-02-01 08:09:32 +000080
81 __swig_getmethods__["end_addr"] = GetEndAddress
Greg Clayton5ef31a92012-06-29 22:00:42 +000082 if _newclass: end_addr = property(GetEndAddress, None, doc='''A read only property that returns an lldb object that represents the end address (lldb.SBAddress) for this symbol.''')
Greg Clayton6b2bd932012-02-01 08:09:32 +000083
84 __swig_getmethods__["prologue_size"] = GetPrologueByteSize
Greg Clayton5ef31a92012-06-29 22:00:42 +000085 if _newclass: prologue_size = property(GetPrologueByteSize, None, doc='''A read only property that returns the size in bytes of the prologue instructions as an unsigned integer.''')
Greg Clayton6b2bd932012-02-01 08:09:32 +000086
87 __swig_getmethods__["instructions"] = get_instructions_from_current_target
Greg Clayton5ef31a92012-06-29 22:00:42 +000088 if _newclass: instructions = property(get_instructions_from_current_target, None, doc='''A read only property that returns an lldb object that represents the instructions (lldb.SBInstructionList) for this symbol.''')
Greg Clayton74ae3f52012-04-02 20:08:08 +000089
90 __swig_getmethods__["external"] = IsExternal
Greg Clayton5ef31a92012-06-29 22:00:42 +000091 if _newclass: external = property(IsExternal, None, doc='''A read only property that returns a boolean value that indicates if this symbol is externally visiable (exported) from the module that contains it.''')
Greg Clayton74ae3f52012-04-02 20:08:08 +000092
93 __swig_getmethods__["synthetic"] = IsSynthetic
Greg Clayton5ef31a92012-06-29 22:00:42 +000094 if _newclass: synthetic = property(IsSynthetic, None, doc='''A read only property that returns a boolean value that indicates if this symbol was synthetically created from information in module that contains it.''')
Greg Clayton74ae3f52012-04-02 20:08:08 +000095
Greg Clayton6b2bd932012-02-01 08:09:32 +000096
97 %}
98
Johnny Chen349f0762011-07-19 01:07:06 +000099};
100
101} // namespace lldb