9#include <unordered_map>
10#include <unordered_set>
35 std::unique_ptr<structured_control_flow::Sequence> root_;
50 std::unique_ptr<StructuredSDFG>
clone()
const;
const types::IType & return_type() const
FunctionType type() const
Function(const std::string &name, FunctionType type)
const std::string & name() const
StructuredSDFG & operator=(const StructuredSDFG &)=delete
void validate() const override
Validates the function.
structured_control_flow::Sequence & root()
const structured_control_flow::Sequence & root() const
StructuredSDFG(const StructuredSDFG &sdfg)=delete
StructuredSDFG(const std::string &name, FunctionType type)
friend class Schedule
Definition structured_sdfg.h:32
std::unique_ptr< StructuredSDFG > clone() const
StructuredSDFG(const std::string &name, FunctionType type, const types::IType &return_type)
Note: Even though the class references unique_ptr, it will never delete an SDFG it has a reference to...
Definition structured_sdfg_builder.h:44
A sequential container of control flow nodes.
Definition sequence.h:52
Abstract base interface for all types in the sdfglib type system.
Definition type.h:625
Definition function_builder.h:10
StringEnum FunctionType
Definition function.h:37