libzypp 17.37.17
zypp::exception_detail Namespace Reference

Classes

struct  CodeLocation
 Keep FILE, FUNCTION and LINE. More...

Typedefs

template<class TExcpt>
using EnableIfIsException = std::enable_if_t< std::is_base_of_v<Exception,TExcpt>, int>
 SFINAE: Hide template signature unless TExcpt is derived from Exception.
template<class TExcpt>
using EnableIfNotException = std::enable_if_t< !std::is_base_of_v<Exception,TExcpt>, int>
 SFINAE: Hide template signature if TExcpt is derived from Exception.

Functions

std::ostream & operator<< (std::ostream &str, const CodeLocation &obj)
void do_ZYPP_RETHROW (const std::exception_ptr &excpt_r, const CodeLocation &where_r)
std::exception_ptr do_ZYPP_FWD_EXCPT_PTR (const std::exception_ptr &excpt_r, CodeLocation &&where_r)
 Helper for ZYPP_FWD_CURRENT_EXCPT().
void do_ZYPP_CAUGHT (const std::exception_ptr &excpt_r, CodeLocation &&where_r)
 Helper for std::exception_ptr.
template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void do_ZYPP_THROW (const TExcpt &excpt_r, const CodeLocation &where_r) __attribute__((noreturn))
 Helper for ZYPP_THROW( Exception ).
template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void do_ZYPP_THROW (const TExcpt &excpt_r, CodeLocation &&where_r) __attribute__((noreturn))
template<class TExcpt, EnableIfNotException< TExcpt > = 0>
void do_ZYPP_THROW (const TExcpt &excpt_r, const CodeLocation &where_r) __attribute__((noreturn))
 Helper for ZYPP_THROW( not Exception ).
template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void do_ZYPP_CAUGHT (const TExcpt &excpt_r, const CodeLocation &where_r)
 Helper for ZYPP_THROW( Exception ).
template<class TExcpt, EnableIfNotException< TExcpt > = 0>
void do_ZYPP_CAUGHT (const TExcpt &excpt_r, const CodeLocation &where_r)
 Helper for ZYPP_THROW( not Exception ).
template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void do_ZYPP_RETHROW (const TExcpt &excpt_r, const CodeLocation &where_r) __attribute__((noreturn))
 Helper for ZYPP_THROW( Exception ).
template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void do_ZYPP_RETHROW (const TExcpt &excpt_r, CodeLocation &&where_r) __attribute__((noreturn))
template<class TExcpt, EnableIfNotException< TExcpt > = 0>
void do_ZYPP_RETHROW (const TExcpt &excpt_r, const CodeLocation &where_r) __attribute__((noreturn))
 Helper for ZYPP_THROW( not Exception ).
template<class TExcpt>
std::exception_ptr do_ZYPP_EXCPT_PTR (TExcpt &&excpt_r, CodeLocation &&where_r)
 Helper for ZYPP_EXCPT_PTR( Exception ).
std::ostream & operator<< (std::ostream &str, const CodeLocation &obj)
 Stream output.

Typedef Documentation

◆ EnableIfIsException

SFINAE: Hide template signature unless TExcpt is derived from Exception.

Definition at line 344 of file Exception.h.

◆ EnableIfNotException

SFINAE: Hide template signature if TExcpt is derived from Exception.

Definition at line 348 of file Exception.h.

Function Documentation

◆ operator<<() [1/2]

std::ostream & zypp::exception_detail::operator<< ( std::ostream & str,
const CodeLocation & obj )
related

Definition at line 38 of file Exception.cc.

◆ do_ZYPP_RETHROW() [1/4]

void zypp::exception_detail::do_ZYPP_RETHROW ( const std::exception_ptr & excpt_r,
const CodeLocation & where_r )

Definition at line 41 of file Exception.cc.

◆ do_ZYPP_FWD_EXCPT_PTR()

std::exception_ptr zypp::exception_detail::do_ZYPP_FWD_EXCPT_PTR ( const std::exception_ptr & excpt_r,
CodeLocation && where_r )

Helper for ZYPP_FWD_CURRENT_EXCPT().

Definition at line 60 of file Exception.cc.

◆ do_ZYPP_CAUGHT() [1/3]

void zypp::exception_detail::do_ZYPP_CAUGHT ( const std::exception_ptr & excpt_r,
CodeLocation && where_r )

Helper for std::exception_ptr.

Definition at line 77 of file Exception.cc.

◆ do_ZYPP_THROW() [1/3]

template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void zypp::exception_detail::do_ZYPP_THROW ( const TExcpt & excpt_r,
const CodeLocation & where_r )

Helper for ZYPP_THROW( Exception ).

Definition at line 355 of file Exception.h.

◆ do_ZYPP_THROW() [2/3]

template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void zypp::exception_detail::do_ZYPP_THROW ( const TExcpt & excpt_r,
CodeLocation && where_r )

Definition at line 365 of file Exception.h.

◆ do_ZYPP_THROW() [3/3]

template<class TExcpt, EnableIfNotException< TExcpt > = 0>
void zypp::exception_detail::do_ZYPP_THROW ( const TExcpt & excpt_r,
const CodeLocation & where_r )

Helper for ZYPP_THROW( not Exception ).

Definition at line 376 of file Exception.h.

◆ do_ZYPP_CAUGHT() [2/3]

template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void zypp::exception_detail::do_ZYPP_CAUGHT ( const TExcpt & excpt_r,
const CodeLocation & where_r )

Helper for ZYPP_THROW( Exception ).

Definition at line 384 of file Exception.h.

◆ do_ZYPP_CAUGHT() [3/3]

template<class TExcpt, EnableIfNotException< TExcpt > = 0>
void zypp::exception_detail::do_ZYPP_CAUGHT ( const TExcpt & excpt_r,
const CodeLocation & where_r )

Helper for ZYPP_THROW( not Exception ).

Definition at line 391 of file Exception.h.

◆ do_ZYPP_RETHROW() [2/4]

template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void zypp::exception_detail::do_ZYPP_RETHROW ( const TExcpt & excpt_r,
const CodeLocation & where_r )

Helper for ZYPP_THROW( Exception ).

Definition at line 404 of file Exception.h.

◆ do_ZYPP_RETHROW() [3/4]

template<class TExcpt, EnableIfIsException< TExcpt > = 0>
void zypp::exception_detail::do_ZYPP_RETHROW ( const TExcpt & excpt_r,
CodeLocation && where_r )

Definition at line 414 of file Exception.h.

◆ do_ZYPP_RETHROW() [4/4]

template<class TExcpt, EnableIfNotException< TExcpt > = 0>
void zypp::exception_detail::do_ZYPP_RETHROW ( const TExcpt & excpt_r,
const CodeLocation & where_r )

Helper for ZYPP_THROW( not Exception ).

Definition at line 425 of file Exception.h.

◆ do_ZYPP_EXCPT_PTR()

template<class TExcpt>
std::exception_ptr zypp::exception_detail::do_ZYPP_EXCPT_PTR ( TExcpt && excpt_r,
CodeLocation && where_r )

Helper for ZYPP_EXCPT_PTR( Exception ).

Definition at line 435 of file Exception.h.