13 #ifndef CIRCT_DIALECT_HW_HWTYPEINTERFACES_H
14 #define CIRCT_DIALECT_HW_HWTYPEINTERFACES_H
17 #include "mlir/IR/Types.h"
21 namespace FieldIdImpl {
34 uint64_t
getFieldID(Type type, uint64_t index);
42 #include "circt/Dialect/HW/HWTypeInterfaces.h.inc"
std::pair< uint64_t, uint64_t > getIndexAndSubfieldID(Type type, uint64_t fieldID)
uint64_t getFieldID(Type type, uint64_t index)
std::pair<::mlir::Type, uint64_t > getSubTypeByFieldID(Type, uint64_t fieldID)
std::pair< uint64_t, bool > projectToChildFieldID(Type, uint64_t fieldID, uint64_t index)
::mlir::Type getFinalTypeByFieldID(Type type, uint64_t fieldID)
uint64_t getIndexForFieldID(Type type, uint64_t fieldID)
uint64_t getMaxFieldID(Type)
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.