P4C
The P4 Compiler
Loading...
Searching...
No Matches
ActionAnalysis::ActionParam Struct Reference

#include <action_analysis.h>

Public Types

enum  speciality_t {
  NO_SPECIAL , HASH_DIST , METER_COLOR , RANDOM ,
  METER_ALU , STFUL_COUNTER
}
 
enum  type_t { PHV , ACTIONDATA , CONSTANT , TOTAL_TYPES }
 

Public Member Functions

 ActionParam (type_t t, const IR::Expression *e)
 
 ActionParam (type_t t, const IR::Expression *e, speciality_t s)
 
cstring get_speciality_string () const
 
cstring get_type_string () const
 
le_bitrange range () const
 
int size () const
 
std::string to_string () const
 
const IR::Expression * unsliced_expr () const
 

Public Attributes

const IR::Expression * expr
 
bool is_conditional = false
 
enum ActionAnalysis::ActionParam::speciality_t speciality = NO_SPECIAL
 
enum ActionAnalysis::ActionParam::type_t type
 

Friends

std::ostream & operator<< (std::ostream &out, const ActionParam &ap)
 

Detailed Description

A way to encapsulate the information contained within a single operand of an instruction, whether the instruction is read from or written to. Also contains the information on what particular bits of the mask are encapsulated.

Member Function Documentation

◆ to_string()

std::string ActionAnalysis::ActionParam::to_string ( ) const

Calculates a total container constant, given which constants wrote to which fields in the operation