CIRCT 24.0.0git
Loading...
Searching...
No Matches
circt::ExportSystemC::EmissionPatternSet< PatternTy > Class Template Reference

This class collects a set of emission patterns with base type 'PatternTy'. More...

#include <EmissionPattern.h>

Inheritance diagram for circt::ExportSystemC::EmissionPatternSet< PatternTy >:
Collaboration diagram for circt::ExportSystemC::EmissionPatternSet< PatternTy >:

Public Member Functions

template<typename... Es, typename ConstructorArg, typename... ConstructorArgs, typename = std::enable_if_t<sizeof...(Es) != 0>>
void add (ConstructorArg &&arg, ConstructorArgs &&...args)
 Add a new emission pattern that requires additional constructor arguments to this set.
template<typename... Es, typename = std::enable_if_t<sizeof...(Es) != 0>>
void add ()
 Add a new emission pattern to the set.
std::vector< std::unique_ptr< PatternTy > > & getNativePatterns ()
 Get all the emission patterns added to this set.

Private Member Functions

template<typename E, typename... Args>
std::enable_if_t< std::is_base_of< PatternTy, E >::value > addImpl (Args &&...args)

Private Attributes

std::vector< std::unique_ptr< PatternTy > > patterns

Detailed Description

template<typename PatternTy>
class circt::ExportSystemC::EmissionPatternSet< PatternTy >

This class collects a set of emission patterns with base type 'PatternTy'.

Definition at line 237 of file EmissionPattern.h.

Member Function Documentation

◆ add() [1/2]

template<typename PatternTy>
template<typename... Es, typename = std::enable_if_t<sizeof...(Es) != 0>>
void circt::ExportSystemC::EmissionPatternSet< PatternTy >::add ( )
inline

Add a new emission pattern to the set.

Definition at line 253 of file EmissionPattern.h.

◆ add() [2/2]

template<typename PatternTy>
template<typename... Es, typename ConstructorArg, typename... ConstructorArgs, typename = std::enable_if_t<sizeof...(Es) != 0>>
void circt::ExportSystemC::EmissionPatternSet< PatternTy >::add ( ConstructorArg && arg,
ConstructorArgs &&... args )
inline

Add a new emission pattern that requires additional constructor arguments to this set.

Definition at line 244 of file EmissionPattern.h.

◆ addImpl()

template<typename PatternTy>
template<typename E, typename... Args>
std::enable_if_t< std::is_base_of< PatternTy, E >::value > circt::ExportSystemC::EmissionPatternSet< PatternTy >::addImpl ( Args &&... args)
inlineprivate

◆ getNativePatterns()

template<typename PatternTy>
std::vector< std::unique_ptr< PatternTy > > & circt::ExportSystemC::EmissionPatternSet< PatternTy >::getNativePatterns ( )
inline

Get all the emission patterns added to this set.

Definition at line 258 of file EmissionPattern.h.

Member Data Documentation

◆ patterns

template<typename PatternTy>
std::vector<std::unique_ptr<PatternTy> > circt::ExportSystemC::EmissionPatternSet< PatternTy >::patterns
private

Definition at line 272 of file EmissionPattern.h.


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