main page
modules
namespaces
classes
files
Gecode home
Generated on Sat Nov 9 2013 19:18:26 for Gecode by
doxygen
1.8.4
gecode
set
exception.hpp
Go to the documentation of this file.
1
/* -*- mode: C++; c-basic-offset: 2; indent-tabs-mode: nil -*- */
2
/*
3
* Main authors:
4
* Christian Schulte <schulte@gecode.org>
5
* Guido Tack <tack@gecode.org>
6
*
7
* Copyright:
8
* Christian Schulte, 2004, 2005
9
* Guido Tack, 2005
10
*
11
* Last modified:
12
* $Date: 2009-07-20 16:05:21 +0200 (Mon, 20 Jul 2009) $ by $Author: tack $
13
* $Revision: 9380 $
14
*
15
* This file is part of Gecode, the generic constraint
16
* development environment:
17
* http://www.gecode.org
18
*
19
* Permission is hereby granted, free of charge, to any person obtaining
20
* a copy of this software and associated documentation files (the
21
* "Software"), to deal in the Software without restriction, including
22
* without limitation the rights to use, copy, modify, merge, publish,
23
* distribute, sublicense, and/or sell copies of the Software, and to
24
* permit persons to whom the Software is furnished to do so, subject to
25
* the following conditions:
26
*
27
* The above copyright notice and this permission notice shall be
28
* included in all copies or substantial portions of the Software.
29
*
30
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
31
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
32
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
33
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
34
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
35
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
36
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
37
*
38
*/
39
40
namespace
Gecode {
namespace
Set {
41
47
class
GECODE_VTABLE_EXPORT
OutOfLimits :
public
Exception {
49
public
:
51
OutOfLimits(
const
char
*
l
);
52
};
53
55
class
GECODE_VTABLE_EXPORT
VariableEmptyDomain :
public
Exception {
57
public
:
59
VariableEmptyDomain(
const
char
*
l
);
60
};
61
63
class
GECODE_VTABLE_EXPORT
TooFewArguments
:
public
Exception
{
64
public
:
66
TooFewArguments
(
const
char
*
l
);
67
};
68
70
class
GECODE_VTABLE_EXPORT
ArgumentSizeMismatch
:
public
Exception
{
71
public
:
73
ArgumentSizeMismatch
(
const
char
*
l
);
74
};
75
77
class
GECODE_VTABLE_EXPORT
UnknownBranching
:
public
Exception
{
78
public
:
80
UnknownBranching
(
const
char
*
l
);
81
};
82
84
class
GECODE_VTABLE_EXPORT
UnknownRelation
:
public
Exception
{
85
public
:
87
UnknownRelation
(
const
char
*
l
);
88
};
89
91
class
GECODE_VTABLE_EXPORT
UnknownOperation
:
public
Exception
{
92
public
:
94
UnknownOperation
(
const
char
*
l
);
95
};
96
98
class
GECODE_VTABLE_EXPORT
IllegalOperation
:
public
Exception
{
99
public
:
101
IllegalOperation
(
const
char
*
l
);
102
};
103
105
111
inline
112
OutOfLimits::OutOfLimits
(
const
char
*
l
)
113
:
Exception
(l,
"Number out of limits"
) {}
114
115
inline
116
VariableEmptyDomain::VariableEmptyDomain
(
const
char
*
l
)
117
:
Exception
(l,
"Attempt to create variable with empty domain"
) {}
118
119
inline
120
TooFewArguments::TooFewArguments
(
const
char
*
l
)
121
: Exception(l,
"Passed argument array has too few elements"
) {}
122
123
inline
124
ArgumentSizeMismatch::ArgumentSizeMismatch
(
const
char
*
l
)
125
: Exception(l,
"Sizes of argument arrays mismatch"
) {}
126
127
inline
128
IllegalOperation::IllegalOperation
(
const
char
*
l
)
129
: Exception(l,
"Illegal operation type"
) {}
130
131
inline
132
UnknownBranching::UnknownBranching
(
const
char
*
l
)
133
: Exception(l,
"Unknown branching type"
) {}
134
135
inline
136
UnknownRelation::UnknownRelation
(
const
char
*
l
)
137
: Exception(l,
"Unknown relation type"
) {}
138
139
inline
140
UnknownOperation::UnknownOperation
(
const
char
*
l
)
141
: Exception(l,
"Unknown operation type"
) {}
142
143
}}
144
145
// STATISTICS: set-other
146