OR-Tools  9.0
variable_and_expressions.h File Reference

Go to the source code of this file.

Classes

class  Variable
 
struct  LinearTerm
 
class  LinearExpression
 
struct  VariablesEquality
 
struct  LowerBoundedLinearExpression
 
struct  UpperBoundedLinearExpression
 
struct  BoundedLinearExpression
 

Namespaces

 operations_research
 Collection of objects used to extend the Constraint Solver library.
 
 operations_research::math_opt
 
 operations_research::math_opt::internal
 

Typedefs

template<typename V >
using VariableMap = IdMap< Variable, V >
 

Functions

std::ostream & operator<< (std::ostream &ostr, const Variable &variable)
 
LinearTerm operator* (double coefficient, LinearTerm term)
 
LinearTerm operator* (LinearTerm term, double coefficient)
 
LinearTerm operator* (double coefficient, Variable variable)
 
LinearTerm operator* (Variable variable, double coefficient)
 
LinearTerm operator/ (LinearTerm term, double coefficient)
 
LinearTerm operator/ (Variable variable, double coefficient)
 
template<typename Iterable >
LinearExpression Sum (const Iterable &items)
 
template<typename LeftIterable , typename RightIterable >
LinearExpression InnerProduct (const LeftIterable &left, const RightIterable &right)
 
std::ostream & operator<< (std::ostream &ostr, const LinearExpression &expression)
 
LinearExpression operator- (LinearExpression expr)
 
LinearExpression operator+ (Variable lhs, double rhs)
 
LinearExpression operator+ (double lhs, Variable rhs)
 
LinearExpression operator+ (Variable lhs, Variable rhs)
 
LinearExpression operator+ (const LinearTerm &lhs, double rhs)
 
LinearExpression operator+ (double lhs, const LinearTerm &rhs)
 
LinearExpression operator+ (const LinearTerm &lhs, Variable rhs)
 
LinearExpression operator+ (Variable lhs, const LinearTerm &rhs)
 
LinearExpression operator+ (const LinearTerm &lhs, const LinearTerm &rhs)
 
LinearExpression operator+ (LinearExpression lhs, double rhs)
 
LinearExpression operator+ (double lhs, LinearExpression rhs)
 
LinearExpression operator+ (LinearExpression lhs, Variable rhs)
 
LinearExpression operator+ (Variable lhs, LinearExpression rhs)
 
LinearExpression operator+ (LinearExpression lhs, const LinearTerm &rhs)
 
LinearExpression operator+ (LinearTerm lhs, LinearExpression rhs)
 
LinearExpression operator+ (LinearExpression lhs, const LinearExpression &rhs)
 
LinearExpression operator- (Variable lhs, double rhs)
 
LinearExpression operator- (double lhs, Variable rhs)
 
LinearExpression operator- (Variable lhs, Variable rhs)
 
LinearExpression operator- (const LinearTerm &lhs, double rhs)
 
LinearExpression operator- (double lhs, const LinearTerm &rhs)
 
LinearExpression operator- (const LinearTerm &lhs, Variable rhs)
 
LinearExpression operator- (Variable lhs, const LinearTerm &rhs)
 
LinearExpression operator- (const LinearTerm &lhs, const LinearTerm &rhs)
 
LinearExpression operator- (LinearExpression lhs, double rhs)
 
LinearExpression operator- (double lhs, LinearExpression rhs)
 
LinearExpression operator- (LinearExpression lhs, Variable rhs)
 
LinearExpression operator- (Variable lhs, LinearExpression rhs)
 
LinearExpression operator- (LinearExpression lhs, const LinearTerm &rhs)
 
LinearExpression operator- (LinearTerm lhs, LinearExpression rhs)
 
LinearExpression operator- (LinearExpression lhs, const LinearExpression &rhs)
 
LinearExpression operator* (LinearExpression lhs, double rhs)
 
LinearExpression operator* (double lhs, LinearExpression rhs)
 
LinearExpression operator/ (LinearExpression lhs, double rhs)
 
internal::VariablesEquality operator== (const Variable &lhs, const Variable &rhs)
 
bool operator!= (const Variable &lhs, const Variable &rhs)
 
std::ostream & operator<< (std::ostream &ostr, const BoundedLinearExpression &bounded_expression)
 
LowerBoundedLinearExpression operator>= (LinearExpression expression, double constant)
 
LowerBoundedLinearExpression operator<= (double constant, LinearExpression expression)
 
LowerBoundedLinearExpression operator>= (const LinearTerm &term, double constant)
 
LowerBoundedLinearExpression operator<= (double constant, const LinearTerm &term)
 
LowerBoundedLinearExpression operator>= (Variable variable, double constant)
 
LowerBoundedLinearExpression operator<= (double constant, Variable variable)
 
UpperBoundedLinearExpression operator<= (LinearExpression expression, double constant)
 
UpperBoundedLinearExpression operator>= (double constant, LinearExpression expression)
 
UpperBoundedLinearExpression operator<= (const LinearTerm &term, double constant)
 
UpperBoundedLinearExpression operator>= (double constant, const LinearTerm &term)
 
UpperBoundedLinearExpression operator<= (Variable variable, double constant)
 
UpperBoundedLinearExpression operator>= (double constant, Variable variable)
 
BoundedLinearExpression operator<= (LowerBoundedLinearExpression lhs, double rhs)
 
BoundedLinearExpression operator>= (double lhs, LowerBoundedLinearExpression rhs)
 
BoundedLinearExpression operator>= (UpperBoundedLinearExpression lhs, double rhs)
 
BoundedLinearExpression operator<= (double lhs, UpperBoundedLinearExpression rhs)
 
BoundedLinearExpression operator<= (LinearExpression lhs, const LinearExpression &rhs)
 
BoundedLinearExpression operator>= (LinearExpression lhs, const LinearExpression &rhs)
 
BoundedLinearExpression operator<= (LinearExpression lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator>= (LinearExpression lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator<= (const LinearTerm &lhs, LinearExpression rhs)
 
BoundedLinearExpression operator>= (const LinearTerm &lhs, LinearExpression rhs)
 
BoundedLinearExpression operator<= (LinearExpression lhs, Variable rhs)
 
BoundedLinearExpression operator>= (LinearExpression lhs, Variable rhs)
 
BoundedLinearExpression operator<= (Variable lhs, LinearExpression rhs)
 
BoundedLinearExpression operator>= (Variable lhs, LinearExpression rhs)
 
BoundedLinearExpression operator<= (const LinearTerm &lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator>= (const LinearTerm &lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator<= (const LinearTerm &lhs, Variable rhs)
 
BoundedLinearExpression operator>= (const LinearTerm &lhs, Variable rhs)
 
BoundedLinearExpression operator<= (Variable lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator>= (Variable lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator<= (Variable lhs, Variable rhs)
 
BoundedLinearExpression operator>= (Variable lhs, Variable rhs)
 
BoundedLinearExpression operator== (LinearExpression lhs, const LinearExpression &rhs)
 
BoundedLinearExpression operator== (LinearExpression lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator== (const LinearTerm &lhs, LinearExpression rhs)
 
BoundedLinearExpression operator== (LinearExpression lhs, Variable rhs)
 
BoundedLinearExpression operator== (Variable lhs, LinearExpression rhs)
 
BoundedLinearExpression operator== (LinearExpression lhs, double rhs)
 
BoundedLinearExpression operator== (double lhs, LinearExpression rhs)
 
BoundedLinearExpression operator== (const LinearTerm &lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator== (const LinearTerm &lhs, Variable rhs)
 
BoundedLinearExpression operator== (Variable lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator== (const LinearTerm &lhs, double rhs)
 
BoundedLinearExpression operator== (double lhs, const LinearTerm &rhs)
 
BoundedLinearExpression operator== (Variable lhs, double rhs)
 
BoundedLinearExpression operator== (double lhs, Variable rhs)
 
template<typename H >
AbslHashValue (H h, const Variable &variable)