libzypp  17.35.12
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. More...
 
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. More...
 

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, const CodeLocation &where_r)
 Helper for ZYPP_FWD_CURRENT_EXCPT(). More...
 
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 ). More...
 
template<class TExcpt , EnableIfIsException< TExcpt > = 0>
void do_ZYPP_CAUGHT (const TExcpt &excpt_r, const CodeLocation &where_r)
 Helper for ZYPP_THROW( Exception ). More...
 
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 ). More...
 
template<class TExcpt >
std::exception_ptr do_ZYPP_EXCPT_PTR (TExcpt &&excpt_r, const CodeLocation &where_r)
 Helper for ZYPP_EXCPT_PTR( Exception ). More...
 

Typedef Documentation

◆ EnableIfIsException

template<class TExcpt >
using zypp::exception_detail::EnableIfIsException = typedef std::enable_if_t< std::is_base_of_v<Exception,TExcpt>, int>

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

Definition at line 331 of file Exception.h.

◆ EnableIfNotException

template<class TExcpt >
using zypp::exception_detail::EnableIfNotException = typedef std::enable_if_t< !std::is_base_of_v<Exception,TExcpt>, int>

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

Definition at line 335 of file Exception.h.

Function Documentation

◆ operator<<()

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/2]

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,
const CodeLocation where_r 
)

Helper for ZYPP_FWD_CURRENT_EXCPT().

Definition at line 60 of file Exception.cc.

◆ do_ZYPP_THROW()

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 ).

Helper for ZYPP_THROW( not Exception ).

Definition at line 342 of file Exception.h.

◆ do_ZYPP_CAUGHT()

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 ).

Helper for ZYPP_THROW( not Exception ).

Definition at line 362 of file Exception.h.

◆ do_ZYPP_RETHROW() [2/2]

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 ).

Helper for ZYPP_THROW( not Exception ).

Definition at line 379 of file Exception.h.

◆ do_ZYPP_EXCPT_PTR()

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

Helper for ZYPP_EXCPT_PTR( Exception ).

Definition at line 400 of file Exception.h.