P4C
The P4 Compiler
Loading...
Searching...
No Matches
ConstrainedField Class Reference

Class representing PHV::Field with constraints and handle for constraint logging. Contains non-group constraints and a list of slices. More...

#include <constrained_fields.h>

Inheritance diagram for ConstrainedField:
[legend]

Public Member Functions

 ConstrainedField (const cstring &name)
 
void addSlice (const ConstrainedSlice &slice)
 
const Constraints::AlignmentConstraintgetAlignment () const
 
Constraints::ContainerSizeConstraint getContainerSize () const
 
const Constraints::DigestConstraintgetDigest () const
 
const cstringgetName () const
 
std::vector< ConstrainedSlice > & getSlices ()
 
const std::vector< ConstrainedSlice > & getSlices () const
 
const Constraints::SolitaryConstraintgetSolitary () const
 
bool hasBottomBits () const
 
bool hasExactContainer () const
 
bool hasNoHoles () const
 
bool hasNoOverlay () const
 
bool hasNoSplit () const
 
bool hasSameContainerGroup () const
 
void setAlignment (const Constraints::AlignmentConstraint &alignment)
 
void setBottomBits (bool b)
 
void setContainerSize (const Constraints::ContainerSizeConstraint &containerSize)
 
void setDigest (const Constraints::DigestConstraint &digest)
 
void setExactContainer (bool b)
 
void setNoHoles (bool b)
 
void setNoOverlay (bool b)
 
void setNoSplit (bool b)
 
void setSameContainerGroup (bool b)
 
void setSolitary (const Constraints::SolitaryConstraint &solitary)
 Constraints.
 
- Public Member Functions inherited from LoggableEntity
Constraint * getLogger ()
 
bool hasLoggedConstraints () const
 

Additional Inherited Members

- Public Types inherited from LoggableEntity
using Constraint = Logging::Phv_Schema_Logger::Constraint
 
- Protected Attributes inherited from LoggableEntity
Constraint * logger = nullptr
 

Detailed Description

Class representing PHV::Field with constraints and handle for constraint logging. Contains non-group constraints and a list of slices.