ROSE 0.11.145.147
Unparser/Null.h
1#ifndef ROSE_BinaryAnalysis_Unparser_Null_H
2#define ROSE_BinaryAnalysis_Unparser_Null_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_BINARY_ANALYSIS
5
6#include <Rose/BinaryAnalysis/Unparser/Base.h>
7
8namespace Rose {
9namespace BinaryAnalysis {
10namespace Unparser {
11
13struct NullSettings: public Settings {};
14
16class Null: public Base {
17 NullSettings settings_;
18
19protected:
20 explicit Null(const Architecture::BaseConstPtr&, const NullSettings&);
21
22public:
23 ~Null();
24
25 static Ptr instance(const Architecture::BaseConstPtr&, const NullSettings& = NullSettings());
26
27 Ptr copy() const override;
28
29 const NullSettings& settings() const override { return settings_; }
30 NullSettings& settings() override { return settings_; }
31
32protected:
33 void emitInstructionMnemonic(std::ostream&, SgAsmInstruction*, State&) const override;
34};
35
36} // namespace
37} // namespace
38} // namespace
39
40#endif
41#endif
Abstract base class for unparsers.
Unparser for null architecture.
void emitInstructionMnemonic(std::ostream &, SgAsmInstruction *, State &) const override
Mid-level unparser function.
const NullSettings & settings() const override
Property: Settings associated with this unparser.
NullSettings & settings() override
Property: Settings associated with this unparser.
Base class for machine instructions.
std::shared_ptr< const Base > BaseConstPtr
Reference counted pointer for Architecture::Base.
The ROSE library.
Settings specific to the null unparser.
Settings that control unparsing.