MCPcopy Create free account
hub / github.com/Gecode/gecode / NegBoolView

Class NegBoolView

gecode/int/view.hpp:1574–1684  ·  view source on GitHub ↗

* \brief Negated Boolean view * * A negated Boolean view \f$n\f$ for a Boolean view \f$b\f$ * provides operations such that \f$n\f$ * behaves as \f$\neg b\f$. * \ingroup TaskActorIntView */

Source from the content-addressed store, hash-verified

1572 * \ingroup TaskActorIntView
1573 */
1574 class NegBoolView : public DerivedView<BoolView> {
1575 protected:
1576 using DerivedView<BoolView>::x;
1577 public:
1578 /// \name Constructors and initialization
1579 //@{
1580 /// Default constructor
1581 NegBoolView(void);
1582 /// Initialize with Boolean view \a y
1583 explicit NegBoolView(const BoolView& y);
1584 //@}
1585
1586 /// \name Domain status access
1587 //@{
1588 /// How many bits does the status have
1589 static const int BITS = BoolView::BITS;
1590 /// Status of domain assigned to zero
1591 static const BoolStatus ZERO = BoolView::ONE;
1592 /// Status of domain assigned to one
1593 static const BoolStatus ONE = BoolView::ZERO;
1594 /// Status of domain not yet assigned
1595 static const BoolStatus NONE = BoolView::NONE;
1596 /// Return current domain status
1597 BoolStatus status(void) const;
1598 //@}
1599
1600 /// \name Boolean domain tests
1601 //@{
1602 /// Test whether view is assigned to be zero
1603 bool zero(void) const;
1604 /// Test whether view is assigned to be one
1605 bool one(void) const;
1606 /// Test whether view is not yet assigned
1607 bool none(void) const;
1608 //@}
1609
1610 /// \name Boolean assignment operations
1611 //@{
1612 /// Try to assign view to one
1613 ModEvent one(Space& home);
1614 /// Try to assign view to zero
1615 ModEvent zero(Space& home);
1616 /// Assign not yet assigned view to one
1617 ModEvent one_none(Space& home);
1618 /// Assign not yet assigned view to zero
1619 ModEvent zero_none(Space& home);
1620 //@}
1621
1622 /// \name Domain update by value
1623 //@{
1624 /// Restrict domain values to be less or equal than \a n
1625 ModEvent lq(Space& home, int n);
1626 /// Restrict domain values to be less or equal than \a n
1627 ModEvent lq(Space& home, long long int n);
1628
1629 /// Restrict domain values to be less than \a n
1630 ModEvent le(Space& home, int n);
1631 /// Restrict domain values to be less than \a n

Callers 4

relFunction · 0.85
argminFunction · 0.85
post_pos_unitFunction · 0.85
post_neg_unitFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected