32 #ifndef LSST_PEX_POLICY_EXCEPTIONS_H 33 #define LSST_PEX_POLICY_EXCEPTIONS_H 38 #define POL_EARGS_TYPED char const* ex_file, int ex_line, char const* ex_func 39 #define POL_EARGS_UNTYPED ex_file, ex_line, ex_func 40 #define POL_EXCEPT_VIRTFUNCS(etn) \ 41 char const *etn::getType(void) const throw() { return #etn " *"; } \ 42 lsst::pex::exceptions::Exception *etn::clone(void) const { \ 43 return new etn(*this); \ 59 :
lsst::pex::exceptions::RuntimeError(
64 std::string(
"Illegal Policy parameter name: ") + badname)
66 virtual char const *getType(
void)
const throw();
76 :
lsst::pex::exceptions::DomainError(
81 std::string(
"Malformed dictionary: ") + msg)
83 virtual char const *getType(
void)
const throw();
94 :
lsst::pex::exceptions::NotFoundError(
99 std::string(
"Policy parameter name not found: ") + parameter)
101 virtual char const *getType(
void)
const throw();
112 :
lsst::pex::exceptions::DomainError(
118 std::string(
"Parameter \"") + parameter +
119 "\" has wrong type; expecting " + expected +
".")
121 virtual char const *getType(
void)
const throw();
128 #endif // LSST_PEX_POLICY_EXCEPTIONS_H #define POL_EARGS_UNTYPED
TypeError(char const *ex_file, int ex_line, char const *ex_func, const std::string ¶meter, const std::string &expected)
an exception indicating that a policy parameter of a given name can not be found in a Policy object...
DictionaryError(char const *ex_file, int ex_line, char const *ex_func)
an exception thrown when Policy parameter name has an illegal form.
BadNameError(char const *ex_file, int ex_line, char const *ex_func, const std::string &badname)
BadNameError(char const *ex_file, int ex_line, char const *ex_func)
DictionaryError(char const *ex_file, int ex_line, char const *ex_func, const std::string &msg)
There is a problem with a dictionary.
NameNotFound(char const *ex_file, int ex_line, char const *ex_func)
an exception indicating that a policy parameter with a given name has a type different from the one t...
TypeError(char const *ex_file, int ex_line, char const *ex_func)
NameNotFound(char const *ex_file, int ex_line, char const *ex_func, const std::string ¶meter)