22class ParserConverter :
public Inspector {
28 void convertSimpleKey(
const IR::Expression *keySet, big_int &value, big_int &mask)
const;
29 unsigned combine(
const IR::Expression *keySet,
const IR::ListExpression *select, big_int &value,
30 big_int &mask,
bool &is_vset,
cstring &vset_name)
const;
32 Util::IJson *convertParserStatement(
const IR::StatOrDecl *stat);
33 Util::IJson *convertSelectKey(
const IR::SelectExpression *expr);
34 Util::IJson *convertPathExpression(
const IR::PathExpression *expr);
36 cstring jsonAssignment(
const IR::Type *type);
37 std::vector<Util::IJson *> convertSelectExpression(
const IR::SelectExpression *expr);
38 void addValueSets(
const IR::P4Parser *parser);
41 bool preorder(
const IR::P4Parser *p)
override;
43 : ctxt(ctxt), name(name), corelib(P4::P4CoreLibrary::instance()) {
44 setName(
"ParserConverter");
void convertSimpleKey(const IR::Expression *keySet, big_int &value, big_int &mask) const
Operates on a select keyset.
Definition bmv2/common/parser.cpp:323
Definition bmv2/common/helpers.h:288