docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
pass_report_consumer.h
Go to the documentation of this file.
1#pragma once
2#include <nlohmann/json.hpp>
3
6
7namespace sdfg {
8
10public:
11 virtual void transform_impossible(const std::string& transform, const std::string& reason) = 0;
12 virtual void transform_impossible(const transformations::Transformation* transform, const std::string& reason) {
13 transform_impossible(transform->name(), reason);
14 }
15
16 virtual void transform_possible(const std::string& transform) = 0;
17 virtual void transform_possible(const transformations::Transformation* transform) {
18 transform_possible(transform->name());
19 }
20
21 virtual void transform_applied(const std::string& transform, nlohmann::json transform_info = {}) = 0;
23 transform_applied(transform->name());
24 }
25
26 virtual void in_scope(StructuredSDFG* scope) = 0;
27 void no_scope() {
28 in_scope(nullptr);
29 }
30
31 virtual void in_outermost_loop(int idx) = 0;
32
33 void no_loop() {
35 }
36 virtual ~PassReportConsumer() = default;
37
38 virtual void target_transform_possible(const std::string basicString, bool b) = 0;
39};
40
41} // namespace sdfg
Definition pass_report_consumer.h:9
virtual void transform_impossible(const transformations::Transformation *transform, const std::string &reason)
Definition pass_report_consumer.h:12
virtual void transform_possible(const std::string &transform)=0
virtual ~PassReportConsumer()=default
void no_scope()
Definition pass_report_consumer.h:27
virtual void in_outermost_loop(int idx)=0
virtual void target_transform_possible(const std::string basicString, bool b)=0
virtual void in_scope(StructuredSDFG *scope)=0
void no_loop()
Definition pass_report_consumer.h:33
virtual void transform_applied(const sdfg::transformations::Transformation *transform)
Definition pass_report_consumer.h:22
virtual void transform_possible(const transformations::Transformation *transform)
Definition pass_report_consumer.h:17
virtual void transform_applied(const std::string &transform, nlohmann::json transform_info={})=0
virtual void transform_impossible(const std::string &transform, const std::string &reason)=0
Definition structured_sdfg.h:30
Base class for all SDFG transformations.
Definition transformation.h:25
virtual std::string name() const =0
Get the name of this transformation.
Definition analysis.h:7