P4C
The P4 Compiler
Loading...
Searching...
No Matches
BFN::PSA::ProgramStructure Struct Reference
Inheritance diagram for BFN::PSA::ProgramStructure:
[legend]

Public Member Functions

const IR::P4Program * create (const IR::P4Program *program) override
 
void createControls () override
 
void createMain () override
 
void createParsers () override
 
void createPipeline ()
 
void loadModel ()
 
- Public Member Functions inherited from P4::ProgramStructure

Public Attributes

PacketPathInfo bridge
 
std::vector< IR::AssignmentStatement * > bridgeFieldAssignments
 
PacketPathInfo clone_e2e
 
PacketPathInfo clone_i2e
 
PsaBlockInfo egress
 
PsaBlockInfo egress_deparser
 
PsaBlockInfo egress_parser
 
std::map< cstring, int > error_to_constant
 
PsaBlockInfo ingress
 
PsaBlockInfo ingress_deparser
 
PsaBlockInfo ingress_parser
 
const IR::Type * metadataType = nullptr
 
ordered_map< cstring, TranslationMapmethodcalls
 
PsaModelpsa_model
 
PacketPathInfo recirculate
 
PacketPathInfo resubmit
 
std::map< gress_t, std::map< cstring, const IR::MethodCallExpression * > > state_to_verify
 
cstring type_params [PSA_TOTAL_TYPES]
 
- Public Attributes inherited from P4::ProgramStructure
ordered_map< const IR::P4Action *, const IR::P4Control * > actions
 Map action to parent control.
 
ordered_map< cstring, const IR::P4Table * > directCounterMap
 All the direct counters. (TODO: This should be PSA-specific or V1MODEL-specific.)
 
DirectMeterMap directMeterMap
 All the direct meters. (TODO: This should be PSA-specific or V1MODEL-specific.)
 
ordered_map< const IR::IDeclaration *, unsigned int > errorCodesMap
 All error codes.
 
ordered_map< const IR::P4Action *, unsigned > ids
 For each action its json id.
 
ordered_map< const IR::Parameter *, unsigned > index
 
std::set< cstringmatch_kinds
 All match kinds.
 
ordered_set< const IR::Parameter * > nonActionParameters
 Parameters of controls/parsers.
 
ResourceMap resourceMap
 map IR node to compile-time allocated resource blocks.
 
std::map< const IR::StructField *, cstringscalarMetadataFields
 
std::vector< const IR::Declaration_Variable * > variables
 All local variables.