CIRCT  19.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
 This file defines an intermediate representation for circuits acting as an abstraction for constraints defined over an SMT's solver context.
 
 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...