P4C
The P4 Compiler
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
Parser::State Struct Reference

Classes

struct  Match
 
struct  MatchKey
 
struct  MatchKey.data
 
struct  OutputUse
 
struct  Ref
 

Public Member Functions

 State (int lineno, const char *name, gress_t, match_t stateno, const VECTOR(pair_t) &data)
 
 State (State &&)=default
 
bool can_be_start ()
 
void pass1 (Parser *)
 
void pass2 (Parser *)
 
void unmark_reachable (Parser *, bitvec &)
 
template<class REGS>
void write_config (REGS &, Parser *, json::vector &)
 
template<class REGS>
int write_lookup_config (REGS &, Parser *, State *, int, const std::vector< State * > &)
 
template<>
int write_lookup_config (Target::JBay::parser_regs &regs, Parser *pa, State *state, int row, const std::vector< State * > &prev)
 
template<>
int write_lookup_config (Target::Tofino::parser_regs &regs, Parser *pa, State *state, int row, const std::vector< State * > &prev)
 

Public Attributes

int all_idx = -1
 
Matchdef
 
gress_t gress
 
bool ignore_max_depth = false
 
MatchKey key
 
int lineno = -1
 
std::vector< Match * > match
 
std::string name
 
std::set< Match * > pred
 
match_t stateno
 

Class Documentation

◆ Parser::State::MatchKey.data

struct Parser::State::MatchKey.data
Class Members
short bit
short byte