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
 
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 ()
 
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.