//===--- DataBufferLLVM.cpp -------------------------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #include "lldb/Utility/DataBufferLLVM.h" #include "llvm/ADT/Twine.h" #include "llvm/Support/FileSystem.h" #include "llvm/Support/MemoryBuffer.h" #include <assert.h> #include <type_traits> using namespace lldb_private; DataBufferLLVM::DataBufferLLVM( std::unique_ptr<llvm::WritableMemoryBuffer> MemBuffer) : Buffer(std::move(MemBuffer)) { assert(Buffer != nullptr && "Cannot construct a DataBufferLLVM with a null buffer"); } DataBufferLLVM::~DataBufferLLVM() {} uint8_t *DataBufferLLVM::GetBytes() { return reinterpret_cast<uint8_t *>(Buffer->getBufferStart()); } const uint8_t *DataBufferLLVM::GetBytes() const { return reinterpret_cast<const uint8_t *>(Buffer->getBufferStart()); } lldb::offset_t DataBufferLLVM::GetByteSize() const { return Buffer->getBufferSize(); } |