docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
sdfg::StructuredSDFG Class Reference

#include <sdfg/structured_sdfg.h>

Inheritance diagram for sdfg::StructuredSDFG:
[legend]

Public Member Functions

 StructuredSDFG (const std::string &name, FunctionType type)
 StructuredSDFG (const std::string &name, FunctionType type, const types::IType &return_type)
 StructuredSDFG (const StructuredSDFG &sdfg)=delete
StructuredSDFG & operator= (const StructuredSDFG &)=delete
void validate () const override
 Validates the function.
const structured_control_flow::Sequence & root () const
structured_control_flow::Sequence & root ()
std::unique_ptr< StructuredSDFG > clone () const
Public Member Functions inherited from sdfg::Function
 Function (const Function &function)=delete
virtual ~Function ()=default
const std::string & name () const
void name (const std::string &name)
FunctionType type () const
const types::IType & return_type () const
size_t element_counter () const
 The last used element ID.
bool exists (const std::string &name) const
auto containers () const
const types::IType & type (const std::string &name) const
auto structures () const
const types::StructureDefinition & structure (const std::string &name) const
const std::vector< std::string > & arguments () const
const std::vector< std::string > & externals () const
bool is_argument (const std::string &name) const
bool is_external (const std::string &name) const
bool is_transient (const std::string &name) const
LinkageType linkage_type (const std::string &name) const
symbolic::SymbolSet parameters () const
bool has_assumption (const symbolic::Symbol symbol) const
const symbolic::Assumption & assumption (const symbolic::Symbol symbol) const
symbolic::Assumption & assumption (const symbolic::Symbol symbol)
const symbolic::Assumptions & assumptions () const
void add_metadata (const std::string &key, const std::string &value)
void remove_metadata (const std::string &key)
const std::string & metadata (const std::string &key) const
const std::string * metadata_if_exists (const std::string &key) const
const std::unordered_map< std::string, std::string > & metadata () const

Friends

class sdfg::builder::StructuredSDFGBuilder
class Schedule

Additional Inherited Members

Static Public Attributes inherited from sdfg::Function
static const std::unique_ptr< types::Scalar > NVPTX_SYMBOL_TYPE
static const std::unique_ptr< types::Pointer > CONST_POINTER_TYPE
Protected Member Functions inherited from sdfg::Function
 Function (const std::string &name, FunctionType type)
 Function (const std::string &name, FunctionType type, const types::IType &return_type)
Protected Attributes inherited from sdfg::Function
size_t element_counter_
 Last used element id.
std::string name_
FunctionType type_
std::unique_ptr< types::IType > return_type_
std::unordered_map< std::string, std::unique_ptr< types::IType > > containers_
std::unordered_map< std::string, std::unique_ptr< types::StructureDefinition > > structures_
std::vector< std::string > arguments_
std::vector< std::string > externals_
std::unordered_map< std::string, LinkageType > externals_linkage_types_
symbolic::Assumptions assumptions_
std::unordered_map< std::string, std::string > metadata_

Constructor & Destructor Documentation

◆ StructuredSDFG() [1/3]

sdfg::StructuredSDFG::StructuredSDFG ( const std::string & name,
FunctionType type )

◆ StructuredSDFG() [2/3]

sdfg::StructuredSDFG::StructuredSDFG ( const std::string & name,
FunctionType type,
const types::IType & return_type )

◆ StructuredSDFG() [3/3]

sdfg::StructuredSDFG::StructuredSDFG ( const StructuredSDFG & sdfg)
delete

Member Function Documentation

◆ clone()

std::unique_ptr< StructuredSDFG > sdfg::StructuredSDFG::clone ( ) const

◆ operator=()

StructuredSDFG & sdfg::StructuredSDFG::operator= ( const StructuredSDFG & )
delete

◆ root() [1/2]

structured_control_flow::Sequence & sdfg::StructuredSDFG::root ( )

◆ root() [2/2]

const structured_control_flow::Sequence & sdfg::StructuredSDFG::root ( ) const

◆ validate()

void sdfg::StructuredSDFG::validate ( ) const
overridevirtual

Validates the function.

Exceptions
InvalidSDFGExceptionif the function is invalid

Reimplemented from sdfg::Function.

◆ Schedule

friend class Schedule
friend

◆ sdfg::builder::StructuredSDFGBuilder


The documentation for this class was generated from the following file: