130fdc8d8SChris Lattner //===-- SBFunction.cpp ------------------------------------------*- C++ -*-===// 230fdc8d8SChris Lattner // 330fdc8d8SChris Lattner // The LLVM Compiler Infrastructure 430fdc8d8SChris Lattner // 530fdc8d8SChris Lattner // This file is distributed under the University of Illinois Open Source 630fdc8d8SChris Lattner // License. See LICENSE.TXT for details. 730fdc8d8SChris Lattner // 830fdc8d8SChris Lattner //===----------------------------------------------------------------------===// 930fdc8d8SChris Lattner 1030fdc8d8SChris Lattner #include "lldb/API/SBFunction.h" 1130fdc8d8SChris Lattner #include "lldb/API/SBProcess.h" 1230fdc8d8SChris Lattner #include "lldb/Symbol/Function.h" 1330fdc8d8SChris Lattner 1430fdc8d8SChris Lattner using namespace lldb; 1530fdc8d8SChris Lattner 1630fdc8d8SChris Lattner 1730fdc8d8SChris Lattner SBFunction::SBFunction () : 18*6611103cSGreg Clayton m_opaque_ptr (NULL) 1930fdc8d8SChris Lattner { 2030fdc8d8SChris Lattner } 2130fdc8d8SChris Lattner 2230fdc8d8SChris Lattner SBFunction::SBFunction (lldb_private::Function *lldb_object_ptr) : 23*6611103cSGreg Clayton m_opaque_ptr (lldb_object_ptr) 2430fdc8d8SChris Lattner { 2530fdc8d8SChris Lattner } 2630fdc8d8SChris Lattner 2730fdc8d8SChris Lattner SBFunction::~SBFunction () 2830fdc8d8SChris Lattner { 29*6611103cSGreg Clayton m_opaque_ptr = NULL; 3030fdc8d8SChris Lattner } 3130fdc8d8SChris Lattner 3230fdc8d8SChris Lattner bool 3330fdc8d8SChris Lattner SBFunction::IsValid () const 3430fdc8d8SChris Lattner { 35*6611103cSGreg Clayton return m_opaque_ptr != NULL; 3630fdc8d8SChris Lattner } 3730fdc8d8SChris Lattner 3830fdc8d8SChris Lattner const char * 3930fdc8d8SChris Lattner SBFunction::GetName() const 4030fdc8d8SChris Lattner { 41*6611103cSGreg Clayton if (m_opaque_ptr) 42*6611103cSGreg Clayton return m_opaque_ptr->GetMangled().GetName().AsCString(); 4330fdc8d8SChris Lattner return NULL; 4430fdc8d8SChris Lattner } 4530fdc8d8SChris Lattner 4630fdc8d8SChris Lattner const char * 4730fdc8d8SChris Lattner SBFunction::GetMangledName () const 4830fdc8d8SChris Lattner { 49*6611103cSGreg Clayton if (m_opaque_ptr) 50*6611103cSGreg Clayton return m_opaque_ptr->GetMangled().GetMangledName().AsCString(); 5130fdc8d8SChris Lattner return NULL; 5230fdc8d8SChris Lattner } 5330fdc8d8SChris Lattner 5430fdc8d8SChris Lattner bool 5530fdc8d8SChris Lattner SBFunction::operator == (const SBFunction &rhs) const 5630fdc8d8SChris Lattner { 57*6611103cSGreg Clayton return m_opaque_ptr == rhs.m_opaque_ptr; 5830fdc8d8SChris Lattner } 5930fdc8d8SChris Lattner 6030fdc8d8SChris Lattner bool 6130fdc8d8SChris Lattner SBFunction::operator != (const SBFunction &rhs) const 6230fdc8d8SChris Lattner { 63*6611103cSGreg Clayton return m_opaque_ptr != rhs.m_opaque_ptr; 6430fdc8d8SChris Lattner } 65