souffle  2.0.2-371-g6315b36
Public Member Functions | Friends
souffle::ast::analysis::Constraint< Var > Class Template Referenceabstract

A generic base class for constraints on variables. More...

#include <ConstraintSystem.h>

Inheritance diagram for souffle::ast::analysis::Constraint< Var >:
Inheritance graph
Collaboration diagram for souffle::ast::analysis::Constraint< Var >:
Collaboration graph

Public Member Functions

virtual void print (std::ostream &out) const =0
 Adds print support for constraints (debugging) More...
 
virtual bool update (Assignment< Var > &ass) const =0
 Requests the given assignment to be updated according to this constraint. More...
 
virtual ~Constraint ()=default
 A virtual destructor. More...
 

Friends

std::ostream & operator<< (std::ostream &out, const Constraint &c)
 Adds print support for constraints (debugging) More...
 

Detailed Description

template<typename Var>
class souffle::ast::analysis::Constraint< Var >

A generic base class for constraints on variables.

Template Parameters
Varthe type of variables constraint.

Definition at line 44 of file ConstraintSystem.h.

Constructor & Destructor Documentation

◆ ~Constraint()

template<typename Var >
virtual souffle::ast::analysis::Constraint< Var >::~Constraint ( )
virtualdefault

A virtual destructor.

Member Function Documentation

◆ print()

template<typename Var >
virtual void souffle::ast::analysis::Constraint< Var >::print ( std::ostream &  out) const
pure virtual

Adds print support for constraints (debugging)

Implemented in souffle::ast::BinaryConstraint, and souffle::ast::BooleanConstraint.

◆ update()

template<typename Var >
virtual bool souffle::ast::analysis::Constraint< Var >::update ( Assignment< Var > &  ass) const
pure virtual

Requests the given assignment to be updated according to this constraint.

Parameters
assthe assignment to be updated
Returns
true if the assignment was altered, false otherwise

Friends And Related Function Documentation

◆ operator<<

template<typename Var >
std::ostream& operator<< ( std::ostream &  out,
const Constraint< Var > &  c 
)
friend

Adds print support for constraints (debugging)

Definition at line 209 of file ConstraintSystem.h.


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