LSSTApplications  18.1.0
LSSTDataManagementBasePackage
Runtime.h
Go to the documentation of this file.
1 /*
2  * This file is part of pex_exceptions.
3  *
4  * Developed for the LSST Data Management System.
5  * This product includes software developed by the LSST Project
6  * (https://www.lsst.org).
7  * See the COPYRIGHT file at the top-level directory of this distribution
8  * for details of code ownership.
9  *
10  * This program is free software: you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation, either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <https://www.gnu.org/licenses/>.
22  */
23 
24 #if !defined(LSST_RUNTIME_EXCEPTION)
25 #define LSST_RUNTIME_EXCEPTION 1
26 
28 
30 
31 namespace lsst {
32 namespace pex {
33 namespace exceptions {
34 
47 
48 
58 
66 LSST_EXCEPTION_TYPE(InvalidParameterError, LogicError, lsst::pex::exceptions::InvalidParameterError)
67 
76 LSST_EXCEPTION_TYPE(LengthError, LogicError, lsst::pex::exceptions::LengthError)
77 
89 LSST_EXCEPTION_TYPE(OutOfRangeError, LogicError, lsst::pex::exceptions::OutOfRangeError)
90 
105 
115 LSST_EXCEPTION_TYPE(RangeError, RuntimeError, lsst::pex::exceptions::RangeError)
116 
124 LSST_EXCEPTION_TYPE(OverflowError, RuntimeError, lsst::pex::exceptions::OverflowError)
125 
133 LSST_EXCEPTION_TYPE(UnderflowError, RuntimeError, lsst::pex::exceptions::UnderflowError)
134 
151 LSST_EXCEPTION_TYPE(NotFoundError, Exception, lsst::pex::exceptions::NotFoundError)
152 
160 LSST_EXCEPTION_TYPE(IoError, RuntimeError, lsst::pex::exceptions::IoError)
161 
167 LSST_EXCEPTION_TYPE(TypeError, LogicError, lsst::pex::exceptions::TypeError)
168 
169 } // namespace exceptions
170 } // namespace pex
171 } // namespace lsst
172 
173 #endif
Reports attempts to exceed implementation-defined length limits for some classes. ...
Definition: Runtime.h:76
Reports arguments outside the domain of an operation.
Definition: Runtime.h:57
Provides consistent interface for LSST exceptions.
Definition: Exception.h:107
Reports errors in external input/output operations.
Definition: Runtime.h:160
Reports attempts to access elements using an invalid key.
Definition: Runtime.h:151
A base class for image defects.
Reports when the result of an arithmetic operation is too large for the destination type...
Definition: Runtime.h:124
Reports when the result of an arithmetic operation is too small for the destination type...
Definition: Runtime.h:133
Reports errors in the logical structure of the program.
Definition: Runtime.h:46
Reports attempts to access elements outside a valid range of indices.
Definition: Runtime.h:89
Reports invalid arguments.
Definition: Runtime.h:66
Reports errors from accepting an object of an unexpected or inappropriate type.
Definition: Runtime.h:167
#define LSST_EXCEPTION_TYPE(t, b, c)
Macro used to define new types of exceptions without additional data.
Definition: Exception.h:69
Reports when the result of an operation cannot be represented by the destination type.
Definition: Runtime.h:115
Reports errors that are due to events beyond the control of the program.
Definition: Runtime.h:104