libzypp  17.5.0
zypp::exception_detail Namespace Reference

Classes

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

Typedefs

template<class TExcpt >
using EnableIfIsException = typename std::enable_if< std::is_base_of< Exception, TExcpt >::value, int >::type
 SFINAE: Hide template signature unless TExcpt is derived from Exception. More...
 
template<class TExcpt >
using EnableIfNotException = typename std::enable_if< !std::is_base_of< Exception, TExcpt >::value, int >::type
 SFINAE: Hide template signature if TExcpt is derived from Exception. More...
 

Functions

std::ostream & operator<< (std::ostream &str, const CodeLocation &obj)
 
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...
 

Typedef Documentation

◆ EnableIfIsException

template<class TExcpt >
using zypp::exception_detail::EnableIfIsException = typedef typename std::enable_if< std::is_base_of<Exception,TExcpt>::value, int>::type

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

Definition at line 319 of file Exception.h.

◆ EnableIfNotException

template<class TExcpt >
using zypp::exception_detail::EnableIfNotException = typedef typename std::enable_if< !std::is_base_of<Exception,TExcpt>::value, int>::type

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

Definition at line 323 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_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 330 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 350 of file Exception.h.

◆ do_ZYPP_RETHROW()

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 367 of file Exception.h.