Generated on Thu Jul 6 07:06:44 2006 for Gecode by doxygen 1.4.7

exception.icc

Go to the documentation of this file.
00001 /*
00002  *  Main authors:
00003  *     Christian Schulte <schulte@gecode.org>
00004  *
00005  *  Copyright:
00006  *     Christian Schulte, 2004
00007  *
00008  *  Last modified:
00009  *     $Date: 2006-03-21 16:31:04 +0100 (Tue, 21 Mar 2006) $ by $Author: schulte $
00010  *     $Revision: 3091 $
00011  *
00012  *  This file is part of Gecode, the generic constraint
00013  *  development environment:
00014  *     http://www.gecode.org
00015  *
00016  *  See the file "LICENSE" for information on usage and
00017  *  redistribution of this file, and for a
00018  *     DISCLAIMER OF ALL WARRANTIES.
00019  *
00020  */
00021 
00022 namespace Gecode { namespace Int {
00023 
00030 
00032   class VariableEmptyDomain : public Exception {
00033   public:
00035     VariableEmptyDomain(const char* l);
00036   };
00037 
00039   class VariableOutOfRangeDomain : public Exception {
00040   public:
00042     VariableOutOfRangeDomain(const char* l);
00043   };
00044 
00045 
00047   class NumericalOverflow : public Exception {
00048   public:
00050     NumericalOverflow(const char* l);
00051   };
00052 
00053 
00055   class ArgumentEmpty : public Exception  {
00056   public:
00058     ArgumentEmpty(const char* l);
00059   };
00060   
00062   class ArgumentSizeMismatch : public Exception  {
00063   public:
00065     ArgumentSizeMismatch(const char* l);
00066   };
00067 
00069   class ArgumentSame : public Exception  {
00070   public:
00072     ArgumentSame(const char* l);
00073   };
00074 
00076   class OnlyInequalityRelations : public Exception  {
00077   public:
00079     OnlyInequalityRelations(const char* l);
00080   };
00081 
00083   class UnknownRelation : public Exception  {
00084   public:
00086     UnknownRelation(const char* l);
00087   };
00088 
00090   class UnknownBranching : public Exception {
00091   public:
00093     UnknownBranching(const char* l);
00094   };
00095 
00097 
00098 
00099 
00100 
00101 
00102   /*
00103    * Classes for exceptions raised by integer module
00104    *
00105    */
00106 
00107   inline
00108   VariableEmptyDomain::VariableEmptyDomain(const char* l)
00109     : Exception(l,"Attempt to create variable with empty domain") {}
00110 
00111   inline
00112   VariableOutOfRangeDomain::VariableOutOfRangeDomain(const char* l)
00113     : Exception(l,"Attempt to create variable with wrong values") {}
00114 
00115   inline
00116   NumericalOverflow::NumericalOverflow(const char* l)
00117     : Exception(l,"Integer overflow") {}
00118 
00119 
00120   inline
00121   ArgumentEmpty::ArgumentEmpty(const char* l)
00122     : Exception(l,"Passed argument array has no elements") {}
00123   
00124   inline
00125   ArgumentSizeMismatch::ArgumentSizeMismatch(const char* l)
00126     : Exception(l,"Sizes of argument arrays mismatch") {}
00127 
00128   inline
00129   ArgumentSame::ArgumentSame(const char* l)
00130     : Exception(l,"Argument array contains same variable multiply") {}
00131 
00132 
00133   inline
00134   OnlyInequalityRelations::OnlyInequalityRelations(const char* l)
00135     : Exception(l,"Only inequality relations are allowed") {}
00136 
00137   inline
00138   UnknownRelation::UnknownRelation(const char* l)
00139     : Exception(l,"Unknown relation type") {}
00140   
00141   inline
00142   UnknownBranching::UnknownBranching(const char* l)
00143     : Exception(l,"Unknown branching type") {}
00144   
00145 }}
00146 
00147 // STATISTICS: int-other
00148