docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
sdfg::passes::TypedLibNodeExpander< T > Class Template Referenceabstract

#include <sdfg/passes/expansion/lib_node_expander.h>

Inheritance diagram for sdfg::passes::TypedLibNodeExpander< T >:
[legend]

Public Member Functions

const LibNodeExpander * for_lib_node (const data_flow::LibraryNode &node) const override
 Prefiltering of libnodes.
virtual LibNodeExpander::ExpandOutcome handle_expand (LibNodeExpander::ExpandContext &context, structured_control_flow::Block &block, T &node) const =0
LibNodeExpander::ExpandOutcome handle_expand (LibNodeExpander::ExpandContext &context, structured_control_flow::Block &block, data_flow::LibraryNode &node) const override
Public Member Functions inherited from sdfg::passes::LibNodeExpander
virtual ~LibNodeExpander ()=default
virtual const data_flow::LibraryNodeCode * matched_code () const
 If this expander dispatches on a single, fixed library node code, expose it here.

Additional Inherited Members

Public Types inherited from sdfg::passes::LibNodeExpander
enum class  InputUse {
  Skip = 0 , Scalar , IndirectRead , IndirectWrite ,
  IndirectReadWrite
}

Member Function Documentation

◆ for_lib_node()

template<typename T>
const LibNodeExpander * sdfg::passes::TypedLibNodeExpander< T >::for_lib_node ( const data_flow::LibraryNode & node) const
inlineoverridevirtual

Prefiltering of libnodes.

Allows that an expander sub-divides based on types, codes or impl-types or sth. more elaborate, because we get ready to transform

Parameters
node
Returns
nullptr if not applicable

Reimplemented from sdfg::passes::LibNodeExpander.

◆ handle_expand() [1/2]

template<typename T>
LibNodeExpander::ExpandOutcome sdfg::passes::TypedLibNodeExpander< T >::handle_expand ( LibNodeExpander::ExpandContext & context,
structured_control_flow::Block & block,
data_flow::LibraryNode & node ) const
inlineoverridevirtual

◆ handle_expand() [2/2]


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