CIRCT  20.0.0git
Classes | Namespaces | Enumerations
EmissionPattern.h File Reference
#include "EmissionPatternSupport.h"
#include "mlir/IR/Operation.h"
#include <any>
Include dependency graph for EmissionPattern.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  circt::ExportSystemC::MatchResult
 This class allows a pattern's match function for inlining to pass its result's precedence to the pattern that requested the expression. More...
 
class  circt::ExportSystemC::PatternBase
 This is indented to be the base class for all emission patterns. More...
 
struct  circt::ExportSystemC::OpEmissionPatternBase
 This is intended to be the base class for all emission patterns matching on operations. More...
 
struct  circt::ExportSystemC::TypeEmissionPatternBase
 This is intended to be the base class for all emission patterns matching on types. More...
 
struct  circt::ExportSystemC::AttrEmissionPatternBase
 This is intended to be the base class for all emission patterns matching on attributes. More...
 
struct  circt::ExportSystemC::OpEmissionPattern< Op >
 This is a convenience class providing default implementations for operation emission patterns. More...
 
struct  circt::ExportSystemC::TypeEmissionPattern< Ty >
 This is a convenience class providing default implementations for type emission patterns. More...
 
struct  circt::ExportSystemC::AttrEmissionPattern< A >
 This is a convenience class providing default implementations for attribute emission patterns. More...
 
class  circt::ExportSystemC::EmissionPatternSet< PatternTy >
 This class collects a set of emission patterns with base type 'PatternTy'. More...
 
class  circt::ExportSystemC::FrozenEmissionPatternSet< PatternTy, KeyTy >
 This class intends to collect a set of emission patterns in a way to provide fast lookups, but does not allow to add more patterns after construction. More...
 
struct  circt::ExportSystemC::FrozenEmissionPatternSet< PatternTy, KeyTy >::Impl
 The internal implementation of the frozen pattern set. More...
 

Namespaces

 circt
 The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
 
 circt::ExportSystemC
 

Enumerations

enum class  circt::ExportSystemC::Precedence {
  circt::ExportSystemC::LIT = 0 , circt::ExportSystemC::VAR = 0 , circt::ExportSystemC::SCOPE_RESOLUTION = 1 , circt::ExportSystemC::POSTFIX_INC = 2 ,
  circt::ExportSystemC::POSTFIX_DEC = 2 , circt::ExportSystemC::FUNCTIONAL_CAST = 2 , circt::ExportSystemC::FUNCTION_CALL = 2 , circt::ExportSystemC::SUBSCRIPT = 2 ,
  circt::ExportSystemC::MEMBER_ACCESS = 2 , circt::ExportSystemC::PREFIX_INC = 3 , circt::ExportSystemC::PREFIX_DEC = 3 , circt::ExportSystemC::NOT = 3 ,
  circt::ExportSystemC::CAST = 3 , circt::ExportSystemC::DEREFERENCE = 3 , circt::ExportSystemC::ADDRESS_OF = 3 , circt::ExportSystemC::SIZEOF = 3 ,
  circt::ExportSystemC::NEW = 3 , circt::ExportSystemC::DELETE = 3 , circt::ExportSystemC::POINTER_TO_MEMBER = 4 , circt::ExportSystemC::MUL = 5 ,
  circt::ExportSystemC::DIV = 5 , circt::ExportSystemC::MOD = 5 , circt::ExportSystemC::ADD = 6 , circt::ExportSystemC::SUB = 6 ,
  circt::ExportSystemC::SHL = 7 , circt::ExportSystemC::SHR = 7 , circt::ExportSystemC::RELATIONAL = 9 , circt::ExportSystemC::EQUALITY = 10 ,
  circt::ExportSystemC::BITWISE_AND = 11 , circt::ExportSystemC::BITWISE_XOR = 12 , circt::ExportSystemC::BITWISE_OR = 13 , circt::ExportSystemC::LOGICAL_AND = 14 ,
  circt::ExportSystemC::LOGICAL_OR = 15 , circt::ExportSystemC::TERNARY = 16 , circt::ExportSystemC::THROW = 16 , circt::ExportSystemC::ASSIGN = 16 ,
  circt::ExportSystemC::COMMA = 17
}
 This enum encodes the precedence of C++ expressions. More...