P4C
The P4 Compiler
Loading...
Searching...
No Matches
ActionData::RandomPadding Class Reference
Inheritance diagram for ActionData::RandomPadding:
[legend]

Public Member Functions

 RandomPadding (int s)
 
bool can_merge (const Parameter *ad) const override
 
void dbprint (std::ostream &out) const override
 
bool equiv_value (const Parameter *ad, bool check_cond=true) const override
 
bool from_p4_program () const override
 
const Parameterget_extended_param (uint32_t extensions, const Parameter *ad) const override
 
bool is_next_bit_of_param (const Parameter *ad, bool same_alias) const override
 
bool is_subset_of (const Parameter *ad) const override
 
const Parametermerge (const Parameter *ad) const override
 
cstring name () const override
 
bool only_one_overlap_solution () const override
 
const Parameteroverlap (const Parameter *ad, bool only_one_overlap_solution, le_bitrange *my_overlap, le_bitrange *ad_overlap) const override
 
int size () const override
 
const Parametersplit (int lo, int hi) const override
 
- Public Member Functions inherited from ActionData::Parameter
bool can_overlap_ranges (le_bitrange my_range, le_bitrange ad_range, le_bitrange &overlap, le_bitrange *my_overlap, le_bitrange *ad_overlap) const
 
cstring cond_name () const
 
bool equiv_cond (const Parameter *p) const
 
template<typename T >
bool is () const
 
bool is_cond_type (ModConditionally_t type) const
 
void set_cond (const Parameter *p)
 
void set_cond (ModConditionally_t ct, cstring n)
 
template<typename T >
const T * to () const
 
- Public Member Functions inherited from P4::IHasDbPrint
void print () const
 

Additional Inherited Members

- Protected Attributes inherited from ActionData::Parameter
cstring _cond_name
 
ModConditionally_t _cond_type = NONE
 

Member Function Documentation

◆ can_merge()

bool ActionData::RandomPadding::can_merge ( const Parameter * ad) const
overridevirtual

Reimplemented from ActionData::Parameter.

◆ dbprint()

void ActionData::RandomPadding::dbprint ( std::ostream & out) const
inlineoverridevirtual

Implements ActionData::Parameter.

◆ equiv_value()

bool ActionData::RandomPadding::equiv_value ( const Parameter * ad,
bool check_cond = true ) const
overridevirtual

Implements ActionData::Parameter.

◆ from_p4_program()

bool ActionData::RandomPadding::from_p4_program ( ) const
inlineoverridevirtual

Implements ActionData::Parameter.

◆ get_extended_param()

const Parameter * ActionData::RandomPadding::get_extended_param ( uint32_t extensions,
const Parameter * ad ) const
overridevirtual

Implements ActionData::Parameter.

◆ is_next_bit_of_param()

bool ActionData::RandomPadding::is_next_bit_of_param ( const Parameter * ad,
bool same_alias ) const
overridevirtual

Implements ActionData::Parameter.

◆ is_subset_of()

bool ActionData::RandomPadding::is_subset_of ( const Parameter * ad) const
overridevirtual

Reimplemented from ActionData::Parameter.

◆ merge()

const Parameter * ActionData::RandomPadding::merge ( const Parameter * ad) const
overridevirtual

Reimplemented from ActionData::Parameter.

◆ name()

cstring ActionData::RandomPadding::name ( ) const
inlineoverridevirtual

Implements ActionData::Parameter.

◆ only_one_overlap_solution()

bool ActionData::RandomPadding::only_one_overlap_solution ( ) const
inlineoverridevirtual

Implements ActionData::Parameter.

◆ overlap()

const Parameter * ActionData::RandomPadding::overlap ( const Parameter * ad,
bool only_one_overlap_solution,
le_bitrange * my_overlap,
le_bitrange * ad_overlap ) const
overridevirtual

Implements ActionData::Parameter.

◆ size()

int ActionData::RandomPadding::size ( ) const
inlineoverridevirtual

Implements ActionData::Parameter.

◆ split()

const Parameter * ActionData::RandomPadding::split ( int lo,
int hi ) const
overridevirtual

Implements ActionData::Parameter.