@@ -149,24 +149,24 @@ Util::IJson *ExternConverter_Hash::convertExternObject(UNUSED ConversionContext
149
149
auto parameters = mkParameters (primitive);
150
150
primitive->emplace_non_null (" source_info" _cs, s->sourceInfoJsonObj ());
151
151
auto hash = new Util::JsonObject ();
152
- hash->emplace (" type" _cs , " extern" );
153
- hash->emplace (" value" _cs , em->object ->controlPlaneName ());
152
+ hash->emplace (" type" , " extern" );
153
+ hash->emplace (" value" , em->object ->controlPlaneName ());
154
154
parameters->append (hash);
155
155
if (mc->arguments ->size () == 2 ) { // get_hash
156
156
auto dst = ctxt->conv ->convertLeftValue (mc->arguments ->at (0 )->expression );
157
157
auto fieldList = new Util::JsonObject ();
158
- fieldList->emplace (" type" _cs , " field_list" );
158
+ fieldList->emplace (" type" , " field_list" );
159
159
auto fieldsJson = ctxt->conv ->convert (mc->arguments ->at (1 )->expression , true , false );
160
- fieldList->emplace (" value" _cs , fieldsJson);
160
+ fieldList->emplace (" value" , fieldsJson);
161
161
parameters->append (dst);
162
162
parameters->append (fieldList);
163
163
} else { // get_hash with base and mod
164
164
auto dst = ctxt->conv ->convertLeftValue (mc->arguments ->at (0 )->expression );
165
165
auto base = ctxt->conv ->convert (mc->arguments ->at (1 )->expression );
166
166
auto fieldList = new Util::JsonObject ();
167
- fieldList->emplace (" type" _cs , " field_list" );
167
+ fieldList->emplace (" type" , " field_list" );
168
168
auto fieldsJson = ctxt->conv ->convert (mc->arguments ->at (2 )->expression , true , false );
169
- fieldList->emplace (" value" _cs , fieldsJson);
169
+ fieldList->emplace (" value" , fieldsJson);
170
170
auto max = ctxt->conv ->convert (mc->arguments ->at (3 )->expression );
171
171
parameters->append (dst);
172
172
parameters->append (base);
@@ -207,14 +207,14 @@ Util::IJson *ExternConverter_InternetChecksum::convertExternObject(
207
207
auto parameters = mkParameters (primitive);
208
208
primitive->emplace_non_null (" source_info" _cs, s->sourceInfoJsonObj ());
209
209
auto cksum = new Util::JsonObject ();
210
- cksum->emplace (" type" _cs , " extern" );
211
- cksum->emplace (" value" _cs , em->object ->controlPlaneName ());
210
+ cksum->emplace (" type" , " extern" );
211
+ cksum->emplace (" value" , em->object ->controlPlaneName ());
212
212
parameters->append (cksum);
213
213
if (em->method ->name == " add" || em->method ->name == " subtract" ) {
214
214
auto fieldList = new Util::JsonObject ();
215
- fieldList->emplace (" type" _cs , " field_list" );
215
+ fieldList->emplace (" type" , " field_list" );
216
216
auto fieldsJson = ctxt->conv ->convert (mc->arguments ->at (0 )->expression , true , false );
217
- fieldList->emplace (" value" _cs , fieldsJson);
217
+ fieldList->emplace (" value" , fieldsJson);
218
218
parameters->append (fieldList);
219
219
} else if (em->method ->name != " clear" ) {
220
220
if (mc->arguments ->size () == 2 ) { // get_verify
@@ -245,9 +245,9 @@ Util::IJson *ExternConverter_Register::convertExternObject(
245
245
return nullptr ;
246
246
}
247
247
auto reg = new Util::JsonObject ();
248
- reg->emplace (" type" _cs , " register_array" );
248
+ reg->emplace (" type" , " register_array" );
249
249
cstring name = em->object ->controlPlaneName ();
250
- reg->emplace (" value" _cs , name);
250
+ reg->emplace (" value" , name);
251
251
if (em->method ->name == " read" ) {
252
252
auto primitive = mkPrimitive (" register_read" _cs);
253
253
auto parameters = mkParameters (primitive);
@@ -277,14 +277,13 @@ void ExternConverter_Hash::convertExternInstance(ConversionContext *ctxt, const
277
277
UNUSED const bool &emitExterns) {
278
278
auto inst = c->to <IR::Declaration_Instance>();
279
279
cstring name = inst->controlPlaneName ();
280
- // auto pnaStructure = static_cast<PnaCodeGenerator *>(ctxt->structure);
281
280
auto pnaStructure = new PnaCodeGenerator ();
282
281
283
282
// add hash instance
284
283
auto jhash = new Util::JsonObject ();
285
- jhash->emplace (" name" _cs , name);
286
- jhash->emplace (" id" _cs , nextId (" extern_instances" _cs));
287
- jhash->emplace (" type" _cs , eb->getName ());
284
+ jhash->emplace (" name" , name);
285
+ jhash->emplace (" id" , nextId (" extern_instances" _cs));
286
+ jhash->emplace (" type" , eb->getName ());
288
287
jhash->emplace_non_null (" source_info" _cs, inst->sourceInfoJsonObj ());
289
288
ctxt->json ->externs ->append (jhash);
290
289
@@ -305,9 +304,9 @@ void ExternConverter_Hash::convertExternInstance(ConversionContext *ctxt, const
305
304
cstring algo_name = algo->to <IR::Declaration_ID>()->name ;
306
305
algo_name = pnaStructure->convertHashAlgorithm (algo_name);
307
306
auto k = new Util::JsonObject ();
308
- k->emplace (" name" _cs , " algo" );
309
- k->emplace (" type" _cs , " string" );
310
- k->emplace (" value" _cs , algo_name);
307
+ k->emplace (" name" , " algo" );
308
+ k->emplace (" type" , " string" );
309
+ k->emplace (" value" , algo_name);
311
310
arr->append (k);
312
311
}
313
312
@@ -328,9 +327,9 @@ void ExternConverter_InternetChecksum::convertExternInstance(UNUSED ConversionCo
328
327
}
329
328
// add checksum instance
330
329
auto jcksum = new Util::JsonObject ();
331
- jcksum->emplace (" name" _cs , name);
332
- jcksum->emplace (" id" _cs , nextId (" extern_instances" _cs));
333
- jcksum->emplace (" type" _cs , eb->getName ());
330
+ jcksum->emplace (" name" , name);
331
+ jcksum->emplace (" id" , nextId (" extern_instances" _cs));
332
+ jcksum->emplace (" type" , eb->getName ());
334
333
jcksum->emplace_non_null (" source_info" _cs, inst->sourceInfoJsonObj ());
335
334
ctxt->json ->externs ->append (jcksum);
336
335
}
@@ -346,8 +345,8 @@ void ExternConverter_Register::convertExternInstance(UNUSED ConversionContext *c
346
345
auto inst = c->to <IR::Declaration_Instance>();
347
346
cstring name = inst->controlPlaneName ();
348
347
auto jreg = new Util::JsonObject ();
349
- jreg->emplace (" name" _cs , name);
350
- jreg->emplace (" id" _cs , nextId (" register_arrays" _cs));
348
+ jreg->emplace (" name" , name);
349
+ jreg->emplace (" id" , nextId (" register_arrays" _cs));
351
350
jreg->emplace_non_null (" source_info" _cs, eb->sourceInfoJsonObj ());
352
351
auto sz = eb->findParameterValue (" size" _cs);
353
352
CHECK_NULL (sz);
@@ -357,7 +356,7 @@ void ExternConverter_Register::convertExternInstance(UNUSED ConversionContext *c
357
356
}
358
357
if (sz->to <IR::Constant>()->value == 0 )
359
358
error (ErrorType::ERR_UNSUPPORTED, " %1%: direct registers are not supported" , inst);
360
- jreg->emplace (" size" _cs , sz->to <IR::Constant>()->value );
359
+ jreg->emplace (" size" , sz->to <IR::Constant>()->value );
361
360
if (!eb->instanceType ->is <IR::Type_SpecializedCanonical>()) {
362
361
modelError (" %1%: Expected a generic specialized type" , eb->instanceType );
363
362
return ;
@@ -378,7 +377,7 @@ void ExternConverter_Register::convertExternInstance(UNUSED ConversionContext *c
378
377
::P4::error (ErrorType::ERR_UNKNOWN, " %1%: unknown width" , st->arguments->at (0 ));
379
378
return ;
380
379
}
381
- jreg->emplace (" bitwidth" _cs , width);
380
+ jreg->emplace (" bitwidth" , width);
382
381
ctxt->json->register_arrays->append (jreg);
383
382
}
384
383
0 commit comments