SBInstructionList.h revision 314564
136849Sdfr//===-- SBInstructionList.h -------------------------------------*- C++ -*-===// 236972Sdfr// 336849Sdfr// The LLVM Compiler Infrastructure 436849Sdfr// 536849Sdfr// This file is distributed under the University of Illinois Open Source 636849Sdfr// License. See LICENSE.TXT for details. 736849Sdfr// 836849Sdfr//===----------------------------------------------------------------------===// 936849Sdfr 1036849Sdfr#ifndef LLDB_SBInstructionList_h_ 1136849Sdfr#define LLDB_SBInstructionList_h_ 1236849Sdfr 1336849Sdfr#include "lldb/API/SBDefines.h" 1436849Sdfr 1536849Sdfr#include <stdio.h> 1636849Sdfr 1736849Sdfrnamespace lldb { 1836849Sdfr 1936849Sdfrclass LLDB_API SBInstructionList { 2036849Sdfrpublic: 2136849Sdfr SBInstructionList(); 2236849Sdfr 2336849Sdfr SBInstructionList(const SBInstructionList &rhs); 2436849Sdfr 2536849Sdfr const SBInstructionList &operator=(const SBInstructionList &rhs); 2650477Speter 2736849Sdfr ~SBInstructionList(); 2836849Sdfr 2936849Sdfr bool IsValid() const; 3036849Sdfr 3136849Sdfr size_t GetSize(); 3255205Speter 3336849Sdfr lldb::SBInstruction GetInstructionAtIndex(uint32_t idx); 3444515Sbde 3559093Sdfr void Clear(); 3644515Sbde 3736849Sdfr void AppendInstruction(lldb::SBInstruction inst); 3836849Sdfr 3936849Sdfr void Print(FILE *out); 4036972Sdfr 4136972Sdfr bool GetDescription(lldb::SBStream &description); 4236972Sdfr 4359093Sdfr bool DumpEmulationForAllInstructions(const char *triple); 4436849Sdfr 4536849Sdfrprotected: 4636849Sdfr friend class SBFunction; 4741153Swollman friend class SBSymbol; 4841153Swollman friend class SBTarget; 4941153Swollman 5041153Swollman void SetDisassembler(const lldb::DisassemblerSP &opaque_sp); 5141153Swollman 5241153Swollmanprivate: 5341153Swollman lldb::DisassemblerSP m_opaque_sp; 5446743Sdfr}; 5546743Sdfr 5646743Sdfr} // namespace lldb 5746743Sdfr 5846743Sdfr#endif // LLDB_SBInstructionList_h_ 5946743Sdfr