1*30fdc8d8SChris Lattner //===-- SBFunction.cpp ------------------------------------------*- C++ -*-===// 2*30fdc8d8SChris Lattner // 3*30fdc8d8SChris Lattner // The LLVM Compiler Infrastructure 4*30fdc8d8SChris Lattner // 5*30fdc8d8SChris Lattner // This file is distributed under the University of Illinois Open Source 6*30fdc8d8SChris Lattner // License. See LICENSE.TXT for details. 7*30fdc8d8SChris Lattner // 8*30fdc8d8SChris Lattner //===----------------------------------------------------------------------===// 9*30fdc8d8SChris Lattner 10*30fdc8d8SChris Lattner #include "lldb/API/SBFunction.h" 11*30fdc8d8SChris Lattner #include "lldb/API/SBProcess.h" 12*30fdc8d8SChris Lattner #include "lldb/Symbol/Function.h" 13*30fdc8d8SChris Lattner 14*30fdc8d8SChris Lattner using namespace lldb; 15*30fdc8d8SChris Lattner 16*30fdc8d8SChris Lattner 17*30fdc8d8SChris Lattner SBFunction::SBFunction () : 18*30fdc8d8SChris Lattner m_lldb_object_ptr (NULL) 19*30fdc8d8SChris Lattner { 20*30fdc8d8SChris Lattner } 21*30fdc8d8SChris Lattner 22*30fdc8d8SChris Lattner SBFunction::SBFunction (lldb_private::Function *lldb_object_ptr) : 23*30fdc8d8SChris Lattner m_lldb_object_ptr (lldb_object_ptr) 24*30fdc8d8SChris Lattner { 25*30fdc8d8SChris Lattner } 26*30fdc8d8SChris Lattner 27*30fdc8d8SChris Lattner SBFunction::~SBFunction () 28*30fdc8d8SChris Lattner { 29*30fdc8d8SChris Lattner m_lldb_object_ptr = NULL; 30*30fdc8d8SChris Lattner } 31*30fdc8d8SChris Lattner 32*30fdc8d8SChris Lattner bool 33*30fdc8d8SChris Lattner SBFunction::IsValid () const 34*30fdc8d8SChris Lattner { 35*30fdc8d8SChris Lattner return m_lldb_object_ptr != NULL; 36*30fdc8d8SChris Lattner } 37*30fdc8d8SChris Lattner 38*30fdc8d8SChris Lattner const char * 39*30fdc8d8SChris Lattner SBFunction::GetName() const 40*30fdc8d8SChris Lattner { 41*30fdc8d8SChris Lattner if (m_lldb_object_ptr) 42*30fdc8d8SChris Lattner return m_lldb_object_ptr->GetMangled().GetName().AsCString(); 43*30fdc8d8SChris Lattner return NULL; 44*30fdc8d8SChris Lattner } 45*30fdc8d8SChris Lattner 46*30fdc8d8SChris Lattner const char * 47*30fdc8d8SChris Lattner SBFunction::GetMangledName () const 48*30fdc8d8SChris Lattner { 49*30fdc8d8SChris Lattner if (m_lldb_object_ptr) 50*30fdc8d8SChris Lattner return m_lldb_object_ptr->GetMangled().GetMangledName().AsCString(); 51*30fdc8d8SChris Lattner return NULL; 52*30fdc8d8SChris Lattner } 53*30fdc8d8SChris Lattner 54*30fdc8d8SChris Lattner bool 55*30fdc8d8SChris Lattner SBFunction::operator == (const SBFunction &rhs) const 56*30fdc8d8SChris Lattner { 57*30fdc8d8SChris Lattner return m_lldb_object_ptr == rhs.m_lldb_object_ptr; 58*30fdc8d8SChris Lattner } 59*30fdc8d8SChris Lattner 60*30fdc8d8SChris Lattner bool 61*30fdc8d8SChris Lattner SBFunction::operator != (const SBFunction &rhs) const 62*30fdc8d8SChris Lattner { 63*30fdc8d8SChris Lattner return m_lldb_object_ptr != rhs.m_lldb_object_ptr; 64*30fdc8d8SChris Lattner } 65