/* * Main authors: * Guido Tack * Christian Schulte * Gabor Szokoli * * Copyright: * Guido Tack, 2004 * Christian Schulte, 2004 * Gabor Szokoli, 2004 * * Last modified: * $Date: 2006-04-11 15:58:37 +0200 (Tue, 11 Apr 2006) $ by $Author: tack $ * $Revision: 3188 $ * * This file is part of Gecode, the generic constraint * development environment: * http://www.gecode.org * * See the file "LICENSE" for information on usage and * redistribution of this file, and for a * DISCLAIMER OF ALL WARRANTIES. * */ #include "gecode/set.hh" #include "gecode/int.hh" namespace Gecode { namespace Set { namespace Int { forceinline MinElement::MinElement(Space* home, SetView y0, Gecode::Int::IntView y1) : IntSetPropagator (home, y0, y1) {} forceinline ExecStatus MinElement::post(Space* home, SetView x0, Gecode::Int::IntView x1) { GECODE_ME_CHECK(x0.cardMin(home,1)); (void) new (home) MinElement(home,x0,x1); return ES_OK; } forceinline MinElement::MinElement(Space* home, bool share, MinElement& p) : IntSetPropagator (home, share, p) {} forceinline MaxElement::MaxElement(Space* home, SetView y0, Gecode::Int::IntView y1) : IntSetPropagator (home, y0, y1) {} forceinline MaxElement::MaxElement(Space* home, bool share, MaxElement& p) : IntSetPropagator (home, share, p) {} }}} // STATISTICS: set-prop