MCPcopy Create free account
hub / github.com/chipsalliance/Surelog / getSimpleVarFromTypespec

Method getSimpleVarFromTypespec

src/DesignCompile/CompileType.cpp:78–248  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

76using namespace UHDM; // NOLINT (using a bunch of them)
77
78variables* CompileHelper::getSimpleVarFromTypespec(
79 UHDM::typespec* spec, std::vector<UHDM::range*>* packedDimensions,
80 CompileDesign* compileDesign) {
81 Serializer& s = compileDesign->getSerializer();
82 variables* var = nullptr;
83 UHDM_OBJECT_TYPE ttps = spec->UhdmType();
84 switch (ttps) {
85 case uhdmint_typespec: {
86 UHDM::int_var* int_var = s.MakeInt_var();
87 var = int_var;
88 break;
89 }
90 case uhdminteger_typespec: {
91 UHDM::integer_var* integer_var = s.MakeInteger_var();
92 var = integer_var;
93 break;
94 }
95 case uhdmlong_int_typespec: {
96 UHDM::long_int_var* int_var = s.MakeLong_int_var();
97 var = int_var;
98 break;
99 }
100 case uhdmstring_typespec: {
101 UHDM::string_var* int_var = s.MakeString_var();
102 var = int_var;
103 break;
104 }
105 case uhdmshort_int_typespec: {
106 UHDM::short_int_var* int_var = s.MakeShort_int_var();
107 var = int_var;
108 break;
109 }
110 case uhdmbyte_typespec: {
111 UHDM::byte_var* int_var = s.MakeByte_var();
112 var = int_var;
113 break;
114 }
115 case uhdmreal_typespec: {
116 UHDM::real_var* int_var = s.MakeReal_var();
117 var = int_var;
118 break;
119 }
120 case uhdmshort_real_typespec: {
121 UHDM::short_real_var* int_var = s.MakeShort_real_var();
122 var = int_var;
123 break;
124 }
125 case uhdmtime_typespec: {
126 UHDM::time_var* int_var = s.MakeTime_var();
127 var = int_var;
128 break;
129 }
130 case uhdmbit_typespec: {
131 UHDM::bit_var* int_var = s.MakeBit_var();
132 var = int_var;
133 break;
134 }
135 case uhdmclass_typespec: {

Callers 3

makeVar_Method · 0.80
swapForSpecifiedVarMethod · 0.80
elabSignalMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected