1#ifndef ROSE_BinaryAnalysis_Concolic_Callback_MemoryExit_H
2#define ROSE_BinaryAnalysis_Concolic_Callback_MemoryExit_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_CONCOLIC_TESTING
5#include <Rose/BinaryAnalysis/Concolic/SharedMemory.h>
7#include <Sawyer/Optional.h>
10namespace BinaryAnalysis {
26class MemoryExit:
public SharedMemoryCallback {
29 using Ptr = MemoryExitPtr;
35 explicit MemoryExit(
const std::string &name);
42 static Ptr instance(
const AddressInterval&);
60 virtual SharedMemoryCallbackPtr instanceFromFactory(
const AddressInterval&,
const Yaml::Node &config)
const override;
61 virtual void playback(SharedMemoryContext&)
override;
62 virtual void handlePreSharedMemory(SharedMemoryContext &ctx)
override;
Holds a value or nothing.
Sawyer::SharedPointer< Node > Ptr
Reference counting pointer.