P4C
The P4 Compiler
 
Loading...
Searching...
No Matches
TC::IntrospectionGenerator Class Reference

This pass generates introspection JSON into user specified file. More...

Inheritance diagram for TC::IntrospectionGenerator:

Public Member Functions

 IntrospectionGenerator (IR::TCPipeline *tcPipeline, P4::ReferenceMap *refMap, P4::TypeMap *typeMap)
 
std::optional< cstringcheckValidTcType (const IR::StringLiteral *sl)
 
void collectActionInfo (const IR::ActionList *actionlist, struct TableAttributes *tableinfo, const IR::P4Table *p4table, const IR::TCTable *table)
 
void collectKeyInfo (const IR::Key *k, struct TableAttributes *tableinfo)
 
void collectTableInfo ()
 
cstring externalName (const IR::IDeclaration *declaration)
 
Util::JsonObjectgenActionInfo (struct ActionAttributes *action)
 
const Util::JsonObjectgenIntrospectionJson ()
 
Util::JsonObjectgenKeyInfo (struct KeyFieldAttributes *keyField)
 
Util::JsonObjectgenTableInfo (struct TableAttributes *tbl)
 
void genTableJson (Util::JsonArray *tablesJson)
 
void postorder (const IR::P4Table *t)
 
bool serializeIntrospectionJson (std::ostream &destination)
 

Detailed Description

This pass generates introspection JSON into user specified file.