Teuchos - Trilinos Tools Package Version of the Day
Loading...
Searching...
No Matches
Teuchos_Exceptions.hpp
1// @HEADER
2// *****************************************************************************
3// Teuchos: Common Tools Package
4//
5// Copyright 2004 NTESS and the Teuchos contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
10#ifndef TEUCHOS_EXCEPTIONS_HPP
11#define TEUCHOS_EXCEPTIONS_HPP
12
13
15
16
17namespace Teuchos {
18
19
24class ExceptionBase : public std::logic_error
25{public:ExceptionBase(const std::string& what_arg) : std::logic_error(what_arg) {}};
26// 2007/11/07: rabartl: Above, I had to change the name from Exception to
27// ExceptionBase because Marzio did a 'using namespace Teuchos' and then he
28// declared his own Exception class. The file Laplacian3D.cpp failed to
29// compile. STOP DOING USING NAMESPACE BLAH!!!!!!
30
31
36class DuplicateOwningRCPError : public ExceptionBase
37{public:DuplicateOwningRCPError(const std::string& what_arg) : ExceptionBase(what_arg) {}};
38
39
44class NullReferenceError : public ExceptionBase
45{public:NullReferenceError(const std::string& what_arg) : ExceptionBase(what_arg) {}};
46
47
52class NonconstAccessError : public ExceptionBase
53{public:NonconstAccessError(const std::string& what_arg) : ExceptionBase(what_arg) {}};
54
55
60class RangeError : public ExceptionBase
61{public:RangeError(const std::string& what_arg) : ExceptionBase(what_arg) {}};
62
63
68class DanglingReferenceError : public ExceptionBase
69{public:DanglingReferenceError(const std::string& what_arg) : ExceptionBase(what_arg) {}};
70
71
76class IncompatibleIteratorsError : public ExceptionBase
77{public:IncompatibleIteratorsError(const std::string& what_arg) : ExceptionBase(what_arg) {}};
78
85class DuplicateParameterSublist : public ExceptionBase {
86
87public:
88 DuplicateParameterSublist(const std::string& what_arg):
89 ExceptionBase(what_arg){}
90
91};
92
99class DuplicateParameterEntryException : public ExceptionBase {
100
101public:
102 DuplicateParameterEntryException(const std::string& what_arg):
103 ExceptionBase(what_arg){}
104
105};
106
112class DuplicateParameterEntryIDException : public ExceptionBase {
113
114public:
115 DuplicateParameterEntryIDException(const std::string& what_arg):
116 ExceptionBase(what_arg){}
117
118};
119
125class DuplicateValidatorIDException : public ExceptionBase {
126
127public:
128 DuplicateValidatorIDException(const std::string& what_arg):
129 ExceptionBase(what_arg){}
130
131};
132
142class NonprintableTypeException : public ExceptionBase {
143
144public:
145 NonprintableTypeException(const std::string& what_arg) :
146 ExceptionBase(what_arg) {}
147
148};
149
150
151
152} // end namespace Teuchos
153
154
155#endif // TEUCHOS_EXCEPTIONS_HPP
Teuchos header file which uses auto-configuration information to include necessary C++ headers.
The Teuchos namespace contains all of the classes, structs and enums used by Teuchos,...