libzypp  17.22.0
zyppglobal.h File Reference
#include <zypp/base/Easy.h>
Include dependency graph for zyppglobal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define LIBZYPP_NG_EXPORT
 
#define LIBZYPP_NG_NO_EXPORT
 
#define ZYPP_DECLARE_PRIVATE(Class)
 
#define ZYPP_FWD_DECLARE_PRIVATE(Class)
 
#define ZYPP_IMPL_PRIVATE(Class)
 
#define ZYPP_DECLARE_PUBLIC(Class)
 
#define Z_D()   auto const d = d_func()
 
#define Z_Z()   auto const z = z_func()
 

Functions

template<typename T >
T * zyppGetPtrHelper (T *ptr)
 
template<typename Ptr >
auto zyppGetPtrHelper (const Ptr &ptr) -> decltype(ptr.operator->())
 
template<typename Ptr >
auto zyppGetPtrHelper (Ptr &ptr) -> decltype(ptr.operator->())
 

Macro Definition Documentation

◆ LIBZYPP_NG_EXPORT

#define LIBZYPP_NG_EXPORT

Definition at line 7 of file zyppglobal.h.

◆ LIBZYPP_NG_NO_EXPORT

#define LIBZYPP_NG_NO_EXPORT

Definition at line 8 of file zyppglobal.h.

◆ ZYPP_DECLARE_PRIVATE

#define ZYPP_DECLARE_PRIVATE (   Class)
Value:
inline Class##Private* d_func() \
{ return reinterpret_cast<Class##Private *>(zyppGetPtrHelper(d_ptr)); } \
inline const Class##Private* d_func() const \
{ return reinterpret_cast<const Class##Private *>(zyppGetPtrHelper(d_ptr)); } \
friend class Class##Private;
T * zyppGetPtrHelper(T *ptr)
Definition: zyppglobal.h:17

Definition at line 21 of file zyppglobal.h.

◆ ZYPP_FWD_DECLARE_PRIVATE

#define ZYPP_FWD_DECLARE_PRIVATE (   Class)
Value:
Class##Private* d_func();\
const Class##Private* d_func() const; \
friend class Class##Private;

Definition at line 28 of file zyppglobal.h.

◆ ZYPP_IMPL_PRIVATE

#define ZYPP_IMPL_PRIVATE (   Class)
Value:
Class##Private* Class::d_func() \
{ return reinterpret_cast<Class##Private *>(zyppGetPtrHelper(d_ptr)); } \
const Class##Private* Class::d_func() const \
{ return reinterpret_cast<const Class##Private *>(zyppGetPtrHelper(d_ptr)); }
T * zyppGetPtrHelper(T *ptr)
Definition: zyppglobal.h:17

Definition at line 33 of file zyppglobal.h.

◆ ZYPP_DECLARE_PUBLIC

#define ZYPP_DECLARE_PUBLIC (   Class)
Value:
inline Class* z_func() { return static_cast<Class *>(z_ptr); } \
inline const Class* z_func() const { return static_cast<const Class *>(z_ptr); } \
friend class Class;

Definition at line 39 of file zyppglobal.h.

◆ Z_D

#define Z_D ( )    auto const d = d_func()

Definition at line 44 of file zyppglobal.h.

◆ Z_Z

#define Z_Z ( )    auto const z = z_func()

Definition at line 45 of file zyppglobal.h.

Function Documentation

◆ zyppGetPtrHelper() [1/3]

template<typename T >
T* zyppGetPtrHelper ( T *  ptr)
inline

Definition at line 17 of file zyppglobal.h.

◆ zyppGetPtrHelper() [2/3]

template<typename Ptr >
auto zyppGetPtrHelper ( const Ptr &  ptr) -> decltype(ptr.operator->())
inline

Definition at line 18 of file zyppglobal.h.

◆ zyppGetPtrHelper() [3/3]

template<typename Ptr >
auto zyppGetPtrHelper ( Ptr &  ptr) -> decltype(ptr.operator->())
inline

Definition at line 19 of file zyppglobal.h.