libzypp 17.32.5
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)
 
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_CAUGHT (const TExcpt &excpt_r, const CodeLocation &where_r)
 Helper for ZYPP_THROW( 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>
std::exception_ptr do_ZYPP_EXCPT_PTR (TExcpt &&excpt_r, const CodeLocation &where_r)
 Helper for ZYPP_EXCPT_PTR( Exception ).
 

Typedef Documentation

◆ EnableIfIsException

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

Definition at line 331 of file Exception.h.

◆ EnableIfNotException

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_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 , EnableIfIsException< TExcpt > = 0>
std::exception_ptr zypp::exception_detail::do_ZYPP_EXCPT_PTR ( TExcpt && excpt_r,
const CodeLocation & where_r )

Helper for ZYPP_EXCPT_PTR( Exception ).

Helper for ZYPP_EXCPT_PTR( not Exception ).

Definition at line 402 of file Exception.h.