MCPcopy Create free account
hub / github.com/Nic30/hdlConvertor / visitAssignment_pattern_key

Method visitAssignment_pattern_key

src/svConvertor/exprPrimaryParser.cpp:307–336  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

305 }
306}
307std::unique_ptr<hdlAst::iHdlExprItem> VerExprPrimaryParser::visitAssignment_pattern_key(
308 sv2017Parser::Assignment_pattern_keyContext *ctx) {
309 // assignment_pattern_key:
310 // KW_DEFAULT
311 // | integer_type
312 // | non_integer_type
313 // | package_or_class_scoped_path
314 // ;
315 if (ctx->KW_DEFAULT()) {
316 return make_unique<HdlValueId>("default");
317 }
318 auto it = ctx->integer_type();
319 if (it) {
320 NotImplementedLogger::print(
321 "VerExprPrimaryParser.visitAssignment_pattern_key integer_type",
322 ctx);
323 return create_object<HdlExprNotImplemented>(ctx);
324 }
325 auto nit = ctx->non_integer_type();
326 if (nit) {
327 NotImplementedLogger::print(
328 "VerExprPrimaryParser.visitAssignment_pattern non_integer_type",
329 ctx);
330 return create_object<HdlExprNotImplemented>(ctx);
331 }
332 auto pcsp = ctx->package_or_class_scoped_path();
333 assert(pcsp);
334 VerExprParser ep(this);
335 return ep.visitPackage_or_class_scoped_path(pcsp);
336}
337
338std::unique_ptr<hdlAst::iHdlExprItem> VerExprPrimaryParser::visitAssignment_pattern(
339 sv2017Parser::Assignment_patternContext *ctx) {

Callers

nothing calls this directly

Tested by

no test coverage detected