CVC4::SubrangeBounds Class Reference

`#include <subrange_bound.h>`

Collaboration diagram for CVC4::SubrangeBounds:
[legend]

## Public Member Functions

| SubrangeBounds (const SubrangeBound &l, const SubrangeBound &u)
bool | operator== (const SubrangeBounds &bounds) const
bool | operator!= (const SubrangeBounds &bounds) const
bool | operator< (const SubrangeBounds &bounds) const
| Is this pair of SubrangeBounds "less than" (contained inside) the given pair of SubrangeBounds? Think of this as a subtype relation, e.g., [0,2] < [0,3].
bool | operator<= (const SubrangeBounds &bounds) const
| Is this pair of SubrangeBounds "less than or equal" (contained inside) the given pair of SubrangeBounds? Think of this as a subtype relation, e.g., [0,2] < [0,3].
bool | operator> (const SubrangeBounds &bounds) const
| Is this pair of SubrangeBounds "greater than" (does it contain) the given pair of SubrangeBounds? Think of this as a supertype relation, e.g., [0,3] > [0,2].
bool | operator>= (const SubrangeBounds &bounds) const
| Is this pair of SubrangeBounds "greater than" (does it contain) the given pair of SubrangeBounds? Think of this as a supertype relation, e.g., [0,3] > [0,2].

## Static Public Member Functions

static bool | joinIsBounded (const SubrangeBounds &a, const SubrangeBounds &b)
| Returns true if the join of two subranges is not (- infinity, + infinity).
static SubrangeBounds | join (const SubrangeBounds &a, const SubrangeBounds &b)
| Returns the join of two subranges, a and b.

## Data Fields

SubrangeBound | lower
SubrangeBound | upper

## Detailed Description

Definition at line 150 of file subrange_bound.h.

## Constructor & Destructor Documentation

## SubrangeBounds()

CVC4::SubrangeBounds::SubrangeBounds | ( | const SubrangeBound & | l,
|  | const SubrangeBound & | u )

inline

Definition at line 156 of file subrange_bound.h.

References CVC4::CheckArgument(), CVC4::SubrangeBound::getBound(), and CVC4::SubrangeBound::hasBound().

## Member Function Documentation

## join()

static SubrangeBounds CVC4::SubrangeBounds::join | ( | const SubrangeBounds & | a,
|  | const SubrangeBounds & | b )

inlinestatic

Returns the join of two subranges, a and b.

precondition: joinIsBounded(a,b) is true

Definition at line 222 of file subrange_bound.h.

References CVC4::DebugCheckArgument(), lower, and upper.

## joinIsBounded()

static bool CVC4::SubrangeBounds::joinIsBounded | ( | const SubrangeBounds & | a,
|  | const SubrangeBounds & | b )

inlinestatic

Returns true if the join of two subranges is not (- infinity, + infinity).

Definition at line 213 of file subrange_bound.h.

References CVC4::SubrangeBound::hasBound(), lower, and upper.

## operator!=()

bool CVC4::SubrangeBounds::operator!= | ( | const SubrangeBounds & | bounds | ) | const

inline

Definition at line 168 of file subrange_bound.h.

## operator<()

bool CVC4::SubrangeBounds::operator< | ( | const SubrangeBounds & | bounds | ) | const

inline

Is this pair of SubrangeBounds "less than" (contained inside) the given pair of SubrangeBounds? Think of this as a subtype relation, e.g., [0,2] < [0,3].

Definition at line 177 of file subrange_bound.h.

References lower, and upper.

## operator<=()

bool CVC4::SubrangeBounds::operator<= | ( | const SubrangeBounds & | bounds | ) | const

inline

Is this pair of SubrangeBounds "less than or equal" (contained inside) the given pair of SubrangeBounds? Think of this as a subtype relation, e.g., [0,2] < [0,3].

Definition at line 187 of file subrange_bound.h.

References lower, and upper.

## operator==()

bool CVC4::SubrangeBounds::operator== | ( | const SubrangeBounds & | bounds | ) | const

inline

Definition at line 164 of file subrange_bound.h.

References lower, and upper.

## operator>()

bool CVC4::SubrangeBounds::operator> | ( | const SubrangeBounds & | bounds | ) | const

inline

Is this pair of SubrangeBounds "greater than" (does it contain) the given pair of SubrangeBounds? Think of this as a supertype relation, e.g., [0,3] > [0,2].

Definition at line 196 of file subrange_bound.h.

References lower, and upper.

## operator>=()

bool CVC4::SubrangeBounds::operator>= | ( | const SubrangeBounds & | bounds | ) | const

inline

Is this pair of SubrangeBounds "greater than" (does it contain) the given pair of SubrangeBounds? Think of this as a supertype relation, e.g., [0,3] > [0,2].

Definition at line 206 of file subrange_bound.h.

References lower, and upper.

## Field Documentation

## lower

SubrangeBound CVC4::SubrangeBounds::lower

Definition at line 153 of file subrange_bound.h.

Referenced by join(), joinIsBounded(), CVC4::SubrangeBoundsHashFunction::operator()(), operator<(), operator<=(), operator==(), operator>(), and operator>=().

## upper

SubrangeBound CVC4::SubrangeBounds::upper

Definition at line 154 of file subrange_bound.h.

Referenced by join(), joinIsBounded(), CVC4::SubrangeBoundsHashFunction::operator()(), operator<(), operator<=(), operator==(), operator>(), and operator>=().

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

- src/util/subrange_bound.h