this repo has no description
1/* -*- mode: C++; c-basic-offset: 2; indent-tabs-mode: nil -*- */ 2/* 3 * Main authors: 4 * Christian Schulte <schulte@gecode.org> 5 * Vincent Barichard <Vincent.Barichard@univ-angers.fr> 6 * 7 * Copyright: 8 * Christian Schulte, 2010 9 * Vincent Barichard, 2012 10 * 11 * This file is part of Gecode, the generic constraint 12 * development environment: 13 * http://www.gecode.org 14 * 15 * Permission is hereby granted, free of charge, to any person obtaining 16 * a copy of this software and associated documentation files (the 17 * "Software"), to deal in the Software without restriction, including 18 * without limitation the rights to use, copy, modify, merge, publish, 19 * distribute, sublicense, and/or sell copies of the Software, and to 20 * permit persons to whom the Software is furnished to do so, subject to 21 * the following conditions: 22 * 23 * The above copyright notice and this permission notice shall be 24 * included in all copies or substantial portions of the Software. 25 * 26 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 27 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 28 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 29 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 30 * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 31 * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 32 * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 33 * 34 */ 35 36namespace Gecode { namespace Float { 37 38 /** 39 * \defgroup FuncThrowFloat Float exceptions 40 * \ingroup FuncThrow 41 */ 42 43 //@{ 44 45 /// %Exception: Value out of limits 46 class GECODE_FLOAT_EXPORT OutOfLimits : public Exception { 47 public: 48 /// Initialize with location \a l 49 OutOfLimits(const char* l); 50 }; 51 52 /// %Exception: Value with mixed sign 53 class GECODE_FLOAT_EXPORT ValueMixedSign : public Exception { 54 public: 55 /// Initialize with location \a l 56 ValueMixedSign(const char* l); 57 }; 58 59 /// %Exception: %Variable created with empty domain 60 class GECODE_FLOAT_EXPORT VariableEmptyDomain : public Exception { 61 public: 62 /// Initialize with location \a l 63 VariableEmptyDomain(const char* l); 64 }; 65 66 /// %Exception: Too few arguments available in argument array 67 class GECODE_FLOAT_EXPORT TooFewArguments : public Exception { 68 public: 69 /// Initialize with location \a l 70 TooFewArguments(const char* l); 71 }; 72 73 /// %Exception: Arguments are of different size 74 class GECODE_FLOAT_EXPORT ArgumentSizeMismatch : public Exception { 75 public: 76 /// Initialize with location \a l 77 ArgumentSizeMismatch(const char* l); 78 }; 79 80 /// %Exception: Arguments contain same variable multiply 81 class GECODE_FLOAT_EXPORT ArgumentSame : public Exception { 82 public: 83 /// Initialize with location \a l 84 ArgumentSame(const char* l); 85 }; 86 87 /// %Exception: Unknown relation passed as argument 88 class GECODE_FLOAT_EXPORT UnknownRelation : public Exception { 89 public: 90 /// Initialize with location \a l 91 UnknownRelation(const char* l); 92 }; 93 94 /// %Exception: Unknown operation passed as argument 95 class GECODE_FLOAT_EXPORT UnknownOperation : public Exception { 96 public: 97 /// Initialize with location \a l 98 UnknownOperation(const char* l); 99 }; 100 101 /// %Exception: Illegal operation passed as argument 102 class GECODE_FLOAT_EXPORT IllegalOperation : public Exception { 103 public: 104 /// Initialize with location \a l 105 IllegalOperation(const char* l); 106 }; 107 108 /// %Exception: Unknown value or variable selection passed as argument 109 class GECODE_FLOAT_EXPORT UnknownBranching : public Exception { 110 public: 111 /// Initialize with location \a l 112 UnknownBranching(const char* l); 113 }; 114 115 /// %Exception: Attempt to access value of unassigned variable 116 class GECODE_FLOAT_EXPORT ValOfUnassignedVar : public Exception { 117 public: 118 /// Initialize with location \a l 119 ValOfUnassignedVar(const char* l); 120 }; 121 122 //@} 123 124}} 125 126// STATISTICS: float-other 127