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

#include <sdfg/builder/function_builder.h>

Inheritance diagram for sdfg::builder::FunctionBuilder:
[legend]

Public Member Functions

virtual ~FunctionBuilder ()=default
void set_return_type (const types::IType &type) const
const types::IType & add_container (const std::string &name, const types::IType &type, bool is_argument=false, bool is_external=false) const
const types::IType & add_external (const std::string &name, const types::IType &type, LinkageType linkage_type) const
void remove_container (const std::string &name) const
void change_type (const std::string &name, const types::IType &type) const
virtual void rename_container (const std::string &old_name, const std::string &new_name) const
types::StructureDefinition & add_structure (const std::string &name, bool is_packed) const
std::unique_ptr< types::Structure > create_vector_type (const types::Scalar &element_type, size_t vector_size)
std::string find_new_name (std::string prefix="tmp_") const
void set_element_counter (size_t element_counter)
virtual void replace_symbols (const symbolic::Expression old_expression, const symbolic::Expression new_expression)
 Replace symbolic expressions on the whole SDFG.
virtual void replace_symbols (const symbolic::ExpressionMapping &replacements)
void update_tasklet (data_flow::Tasklet &tasklet, const data_flow::TaskletCode code)
 Common Dataflow Operations.

Protected Member Functions

virtual Function & function () const =0
size_t new_element_id () const
size_t new_element_id_batch (size_t batch) const

Constructor & Destructor Documentation

◆ ~FunctionBuilder()

virtual sdfg::builder::FunctionBuilder::~FunctionBuilder ( )
virtualdefault

Member Function Documentation

◆ add_container()

const types::IType & sdfg::builder::FunctionBuilder::add_container ( const std::string & name,
const types::IType & type,
bool is_argument = false,
bool is_external = false ) const

◆ add_external()

const types::IType & sdfg::builder::FunctionBuilder::add_external ( const std::string & name,
const types::IType & type,
LinkageType linkage_type ) const

◆ add_structure()

types::StructureDefinition & sdfg::builder::FunctionBuilder::add_structure ( const std::string & name,
bool is_packed ) const

◆ change_type()

void sdfg::builder::FunctionBuilder::change_type ( const std::string & name,
const types::IType & type ) const

◆ create_vector_type()

std::unique_ptr< types::Structure > sdfg::builder::FunctionBuilder::create_vector_type ( const types::Scalar & element_type,
size_t vector_size )

◆ find_new_name()

std::string sdfg::builder::FunctionBuilder::find_new_name ( std::string prefix = "tmp_") const

◆ function()

virtual Function & sdfg::builder::FunctionBuilder::function ( ) const
protectedpure virtual

◆ new_element_id()

size_t sdfg::builder::FunctionBuilder::new_element_id ( ) const
protected

◆ new_element_id_batch()

size_t sdfg::builder::FunctionBuilder::new_element_id_batch ( size_t batch) const
protected

◆ remove_container()

void sdfg::builder::FunctionBuilder::remove_container ( const std::string & name) const

◆ rename_container()

virtual void sdfg::builder::FunctionBuilder::rename_container ( const std::string & old_name,
const std::string & new_name ) const
virtual

◆ replace_symbols() [1/2]

virtual void sdfg::builder::FunctionBuilder::replace_symbols ( const symbolic::Expression old_expression,
const symbolic::Expression new_expression )
virtual

Replace symbolic expressions on the whole SDFG.

Parameters
old_expressionExpression to replace
new_expressionReplacement expression

Reimplemented in sdfg::builder::StructuredSDFGBuilder.

◆ replace_symbols() [2/2]

virtual void sdfg::builder::FunctionBuilder::replace_symbols ( const symbolic::ExpressionMapping & replacements)
virtual

◆ set_element_counter()

void sdfg::builder::FunctionBuilder::set_element_counter ( size_t element_counter)

◆ set_return_type()

void sdfg::builder::FunctionBuilder::set_return_type ( const types::IType & type) const

◆ update_tasklet()

void sdfg::builder::FunctionBuilder::update_tasklet ( data_flow::Tasklet & tasklet,
const data_flow::TaskletCode code )

Common Dataflow Operations.


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