Cerata
A library to generate structural hardware designs
|
#include <type.h>
Public Member Functions | |
Field (std::string name, std::shared_ptr< Type > type, bool reverse=false, bool sep=true) | |
RecordField constructor. | |
Field & | SetType (std::shared_ptr< Type > type) |
Change the type of this field. | |
std::shared_ptr< Type > | type () const |
Return the type of the RecordField. | |
bool | reversed () const |
Return if this individual field should be reversed w.r.t. parent Record type itself on graph edges. | |
std::shared_ptr< Field > | Reverse () |
Reverse the direction of this field and return itself. | |
bool | sep () const |
Return true if in name generation of this field name for flattened types a separator should be placed. | |
void | NoSep () |
Disable the separator in name generation of this field. | |
void | UseSep () |
Enable the separator in name generation of this field. | |
std::shared_ptr< Field > | Copy (const NodeMap &rebinding) const |
Create a copy of the field. | |
![]() | |
Named (std::string name) | |
Named constructor. | |
std::string | name () const |
Return the name of the object. | |
void | SetName (std::string name) |
Change the name of the object. | |
virtual | ~Named ()=default |
Destructor. | |
Public Attributes | |
std::unordered_map< std::string, std::string > | meta |
Metadata for back-end implementations. | |