SBFunction.h revision 5c4c746a3a83c1aad411c6cdc5f9525a4fc2d17e
1//===-- SBFunction.h --------------------------------------------*- 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
10#ifndef LLDB_SBFunction_h_
11#define LLDB_SBFunction_h_
12
13#include "lldb/API/SBDefines.h"
14#include "lldb/API/SBInstructionList.h"
15
16namespace lldb {
17
18class SBFunction
19{
20public:
21
22    SBFunction ();
23
24    ~SBFunction ();
25
26    bool
27    IsValid () const;
28
29    const char *
30    GetName() const;
31
32    const char *
33    GetMangledName () const;
34
35    lldb::SBInstructionList
36    GetInstructions (lldb::SBTarget target);
37
38#ifndef SWIG
39    bool
40    operator == (const lldb::SBFunction &rhs) const;
41
42    bool
43    operator != (const lldb::SBFunction &rhs) const;
44#endif
45
46    bool
47    GetDescription (lldb::SBStream &description);
48
49private:
50    friend class SBFrame;
51    friend class SBSymbolContext;
52
53    SBFunction (lldb_private::Function *lldb_object_ptr);
54
55
56    lldb_private::Function *m_opaque_ptr;
57};
58
59
60} // namespace lldb
61
62#endif // LLDB_SBFunction_h_
63