LLVM: llvm::orc::MemoryAccess Class Reference (original) (raw)

APIs for manipulating memory in the target process. More...

#include "[llvm/ExecutionEngine/Orc/MemoryAccess.h](MemoryAccess%5F8h%5Fsource.html)"

Public Types
using WriteResultFn = unique_function<void(Error)>
Callback function for asynchronous writes.
template<typename T>
using ReadUIntsResult = std::vector<T>
template<typename T>
using OnReadUIntsCompleteFn
using ReadPointersResult = std::vector<ExecutorAddr>
using OnReadPointersCompleteFn
using ReadBuffersResult = std::vector<std::vector<uint8_t>>
using OnReadBuffersCompleteFn
using ReadStringsResult = std::vectorstd::string
using OnReadStringsCompleteFn
Public Member Functions
virtual ~MemoryAccess ()
virtual void writeUInt8sAsync (ArrayRef< tpctypes::UInt8Write > Ws, WriteResultFn OnWriteComplete)=0
virtual void writeUInt16sAsync (ArrayRef< tpctypes::UInt16Write > Ws, WriteResultFn OnWriteComplete)=0
virtual void writeUInt32sAsync (ArrayRef< tpctypes::UInt32Write > Ws, WriteResultFn OnWriteComplete)=0
virtual void writeUInt64sAsync (ArrayRef< tpctypes::UInt64Write > Ws, WriteResultFn OnWriteComplete)=0
virtual void writePointersAsync (ArrayRef< tpctypes::PointerWrite > Ws, WriteResultFn OnWriteComplete)=0
virtual void writeBuffersAsync (ArrayRef< tpctypes::BufferWrite > Ws, WriteResultFn OnWriteComplete)=0
virtual void readUInt8sAsync (ArrayRef< ExecutorAddr > Rs, OnReadUIntsCompleteFn< uint8_t > OnComplete)=0
virtual void readUInt16sAsync (ArrayRef< ExecutorAddr > Rs, OnReadUIntsCompleteFn< uint16_t > OnComplete)=0
virtual void readUInt32sAsync (ArrayRef< ExecutorAddr > Rs, OnReadUIntsCompleteFn< uint32_t > OnComplete)=0
virtual void readUInt64sAsync (ArrayRef< ExecutorAddr > Rs, OnReadUIntsCompleteFn< uint64_t > OnComplete)=0
virtual void readPointersAsync (ArrayRef< ExecutorAddr > Rs, OnReadPointersCompleteFn OnComplete)=0
virtual void readBuffersAsync (ArrayRef< ExecutorAddrRange > Rs, OnReadBuffersCompleteFn OnComplete)=0
virtual void readStringsAsync (ArrayRef< ExecutorAddr > Rs, OnReadStringsCompleteFn OnComplete)=0
Error writeUInt8s (ArrayRef< tpctypes::UInt8Write > Ws)
Error writeUInt16s (ArrayRef< tpctypes::UInt16Write > Ws)
Error writeUInt32s (ArrayRef< tpctypes::UInt32Write > Ws)
Error writeUInt64s (ArrayRef< tpctypes::UInt64Write > Ws)
Error writePointers (ArrayRef< tpctypes::PointerWrite > Ws)
Error writeBuffers (ArrayRef< tpctypes::BufferWrite > Ws)
Expected< ReadUIntsResult< uint8_t > > readUInt8s (ArrayRef< ExecutorAddr > Rs)
Expected< ReadUIntsResult< uint16_t > > readUInt16s (ArrayRef< ExecutorAddr > Rs)
Expected< ReadUIntsResult< uint32_t > > readUInt32s (ArrayRef< ExecutorAddr > Rs)
Expected< ReadUIntsResult< uint64_t > > readUInt64s (ArrayRef< ExecutorAddr > Rs)
Expected< ReadPointersResult > readPointers (ArrayRef< ExecutorAddr > Rs)
Expected< ReadBuffersResult > readBuffers (ArrayRef< ExecutorAddrRange > Rs)
Expected< ReadStringsResult > readStrings (ArrayRef< ExecutorAddr > Rs)

APIs for manipulating memory in the target process.

Definition at line 26 of file MemoryAccess.h.

OnReadBuffersCompleteFn

Initial value:

Tagged union holding either a T or a Error.

unique_function is a type-erasing functor similar to std::function.

Definition at line 41 of file MemoryAccess.h.

OnReadPointersCompleteFn

OnReadStringsCompleteFn

OnReadUIntsCompleteFn

Initial value:

std::vector< T > ReadUIntsResult

Definition at line 33 of file MemoryAccess.h.

ReadBuffersResult

ReadPointersResult

ReadStringsResult

using llvm::orc::MemoryAccess::ReadStringsResult = std::vectorstd::string

ReadUIntsResult

WriteResultFn

Callback function for asynchronous writes.

Definition at line 29 of file MemoryAccess.h.

llvm::orc::MemoryAccess::~MemoryAccess ( ) virtualdefault

readBuffers()

readBuffersAsync()

readPointers()

readPointersAsync()

readStrings()

readStringsAsync()

readUInt16s()

readUInt16sAsync()

readUInt32s()

readUInt32sAsync()

readUInt64s()

readUInt64sAsync()

readUInt8s()

readUInt8sAsync()

writeBuffers()

writeBuffersAsync()

writePointers()

writePointersAsync()

writeUInt16s()

writeUInt16sAsync()

writeUInt32s()

writeUInt32sAsync()

writeUInt64s()

writeUInt64sAsync()

writeUInt8s()

writeUInt8sAsync()


The documentation for this class was generated from the following files: