GCC Middle and Back End API Reference
ana::constraint Class Reference

#include <constraint-manager.h>

Collaboration diagram for ana::constraint:

Public Member Functions

 constraint (equiv_class_id lhs, enum constraint_op c_op, equiv_class_id rhs)
 
void print (pretty_printer *pp, const constraint_manager &cm) const
 
std::unique_ptr< json::objectto_json () const
 
std::unique_ptr< text_art::widget > make_dump_widget (const text_art::dump_widget_info &dwi, const constraint_manager &cm) const
 
hashval_t hash () const
 
bool operator== (const constraint &other) const
 
bool is_ordering_p () const
 
bool implied_by (const constraint &other, const constraint_manager &cm) const
 

Data Fields

equiv_class_id m_lhs
 
enum constraint_op m_op
 
equiv_class_id m_rhs
 

Detailed Description

A relationship between two equivalence classes in a constraint_manager.   

Constructor & Destructor Documentation

◆ constraint()

ana::constraint::constraint ( equiv_class_id lhs,
enum constraint_op c_op,
equiv_class_id rhs )
inline

References gcc_assert.

Member Function Documentation

◆ hash()

hashval_t ana::constraint::hash ( ) const

◆ implied_by()

bool ana::constraint::implied_by ( const constraint & other,
const constraint_manager & cm ) const

◆ is_ordering_p()

bool ana::constraint::is_ordering_p ( ) const
inline

References ana::CONSTRAINT_NE, and m_op.

◆ make_dump_widget()

std::unique_ptr< text_art::widget > ana::constraint::make_dump_widget ( const text_art::dump_widget_info & dwi,
const constraint_manager & cm ) const

◆ operator==()

bool ana::constraint::operator== ( const constraint & other) const

◆ print()

void ana::constraint::print ( pretty_printer * pp,
const constraint_manager & cm ) const

◆ to_json()

std::unique_ptr< json::object > ana::constraint::to_json ( ) const

Field Documentation

◆ m_lhs

equiv_class_id ana::constraint::m_lhs

◆ m_op

enum constraint_op ana::constraint::m_op

Referenced by is_ordering_p().

◆ m_rhs

equiv_class_id ana::constraint::m_rhs

The documentation for this class was generated from the following file: