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-08-31 17:36:38 +0200 (Thu, 31 Aug 2006) $ by $Author: schulte $ 00010 * $Revision: 3579 $ 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 UnknownRelation : public Exception { 00077 public: 00079 UnknownRelation(const char* l); 00080 }; 00081 00083 class UnknownBranching : public Exception { 00084 public: 00086 UnknownBranching(const char* l); 00087 }; 00088 00090 00091 00092 00093 00094 00095 /* 00096 * Classes for exceptions raised by integer module 00097 * 00098 */ 00099 00100 inline 00101 VariableEmptyDomain::VariableEmptyDomain(const char* l) 00102 : Exception(l,"Attempt to create variable with empty domain") {} 00103 00104 inline 00105 VariableOutOfRangeDomain::VariableOutOfRangeDomain(const char* l) 00106 : Exception(l,"Attempt to create variable with wrong values") {} 00107 00108 inline 00109 NumericalOverflow::NumericalOverflow(const char* l) 00110 : Exception(l,"Integer overflow") {} 00111 00112 00113 inline 00114 ArgumentEmpty::ArgumentEmpty(const char* l) 00115 : Exception(l,"Passed argument array has no elements") {} 00116 00117 inline 00118 ArgumentSizeMismatch::ArgumentSizeMismatch(const char* l) 00119 : Exception(l,"Sizes of argument arrays mismatch") {} 00120 00121 inline 00122 ArgumentSame::ArgumentSame(const char* l) 00123 : Exception(l,"Argument array contains same variable multiply") {} 00124 00125 00126 inline 00127 UnknownRelation::UnknownRelation(const char* l) 00128 : Exception(l,"Unknown relation type") {} 00129 00130 inline 00131 UnknownBranching::UnknownBranching(const char* l) 00132 : Exception(l,"Unknown branching type") {} 00133 00134 }} 00135 00136 // STATISTICS: int-other 00137