ROSE 0.11.145.192
Unparser/Cil.h
1#ifndef ROSE_BinaryAnalysis_Unparser_Cil_H
2#define ROSE_BinaryAnalysis_Unparser_Cil_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_BINARY_ANALYSIS
5#include <Rose/BinaryAnalysis/Unparser/Base.h>
6
7#include <Rose/BinaryAnalysis/BasicTypes.h>
8
9namespace Rose {
10namespace BinaryAnalysis {
11namespace Unparser {
12
14struct CilSettings: public Settings {};
15
17class Cil: public Base {
18 CilSettings settings_;
19
20protected:
21 explicit Cil(const Architecture::BaseConstPtr&, const CilSettings&);
22
23public:
24 ~Cil();
25
26 static Ptr instance(const Architecture::BaseConstPtr&, const CilSettings& = CilSettings());
27
28 Ptr copy() const override;
29
30 const CilSettings& settings() const override { return settings_; }
31 CilSettings& settings() override { return settings_; }
32};
33
34} // namespace
35} // namespace
36} // namespace
37
38#endif
39#endif
Abstract base class for unparsers.
const CilSettings & settings() const override
Property: Settings associated with this unparser.
CilSettings & settings() override
Property: Settings associated with this unparser.
std::shared_ptr< const Base > BaseConstPtr
Reference counted pointer for Architecture::Base.
The ROSE library.
Settings specific to the Cil unaprser.
Settings that control unparsing.