#include <cstdio>
#include <zypp/base/TypeTraits.h>
Go to the source code of this file.
|
namespace | zypp |
| Easy-to use interface to the ZYPP dependency resolver.
|
|
|
#define | for_(IT, BEG, END) for ( auto IT = BEG, _for_end = END; IT != _for_end; ++IT ) |
| Convenient for-loops using iterator.
|
|
#define | arrayBegin(A) (&A[0]) |
| Simple C-array iterator.
|
|
#define | arraySize(A) (sizeof(A)/sizeof(*A)) |
|
#define | arrayEnd(A) (&A[0] + arraySize(A)) |
|
#define | defConstStr(FNC, STR) inline const std::string & FNC { static const std::string val( STR ); return val; } |
|
#define | NON_COPYABLE(CLASS) |
| Delete copy ctor and copy assign.
|
|
#define | DEFAULT_COPYABLE(CLASS) |
| Default copy ctor and copy assign.
|
|
#define | NON_MOVABLE(CLASS) |
| Delete move ctor and move assign.
|
|
#define | DEFAULT_MOVABLE(CLASS) |
| Default move ctor and move assign.
|
|
#define | NON_COPYABLE_BUT_MOVE(CLASS) |
| Delete copy ctor and copy assign but enable default move.
|
|
#define | NON_MOVABLE_BUT_COPY(CLASS) |
| Default move ctor and move assign but enable default copy.
|
|
◆ for_
#define for_ |
( |
| IT, |
|
|
| BEG, |
|
|
| END ) for ( auto IT = BEG, _for_end = END; IT != _for_end; ++IT ) |
Convenient for-loops using iterator.
std::set<std::string>; _store;
for_( it, _store.begin(), _store.end() )
{
cout << *it << endl;
}
#define for_(IT, BEG, END)
Convenient for-loops using iterator.
Definition at line 27 of file Easy.h.
◆ arrayBegin
#define arrayBegin |
( |
| A | ) |
(&A[0]) |
Simple C-array iterator.
const char * defstrings[] = { "", "a", "default", "two words" };
cout << *it << endl;
#define arrayBegin(A)
Simple C-array iterator.
Definition at line 36 of file Easy.h.
◆ arraySize
#define arraySize |
( |
| A | ) |
(sizeof(A)/sizeof(*A)) |
◆ arrayEnd
◆ defConstStr
#define defConstStr |
( |
| FNC, |
|
|
| STR ) inline const std::string & FNC { static const std::string val( STR ); return val; } |
String related utilities and Regular expression matching.
#define defConstStr(FNC, STR)
Definition at line 46 of file Easy.h.
◆ NON_COPYABLE
#define NON_COPYABLE |
( |
| CLASS | ) |
|
Value: CLASS( const CLASS & ) = delete; \
CLASS & operator=( const CLASS & ) = delete
Delete copy ctor and copy assign.
Definition at line 49 of file Easy.h.
◆ DEFAULT_COPYABLE
#define DEFAULT_COPYABLE |
( |
| CLASS | ) |
|
Value: CLASS( const CLASS & ) = default; \
CLASS & operator=( const CLASS & ) = default
Default copy ctor and copy assign.
Definition at line 54 of file Easy.h.
◆ NON_MOVABLE
#define NON_MOVABLE |
( |
| CLASS | ) |
|
Value: CLASS( CLASS && ) = delete; \
CLASS & operator=( CLASS && ) = delete
Delete move ctor and move assign.
Definition at line 59 of file Easy.h.
◆ DEFAULT_MOVABLE
#define DEFAULT_MOVABLE |
( |
| CLASS | ) |
|
Value: CLASS( CLASS && ) = default; \
CLASS & operator=( CLASS && ) = default
Default move ctor and move assign.
Definition at line 64 of file Easy.h.
◆ NON_COPYABLE_BUT_MOVE
#define NON_COPYABLE_BUT_MOVE |
( |
| CLASS | ) |
|
Value:
DEFAULT_MOVABLE(CLASS)
#define NON_COPYABLE(CLASS)
Delete copy ctor and copy assign.
Delete copy ctor and copy assign but enable default move.
Definition at line 69 of file Easy.h.
◆ NON_MOVABLE_BUT_COPY
#define NON_MOVABLE_BUT_COPY |
( |
| CLASS | ) |
|
Value:
DEFAULT_COPYABLE(CLASS)
#define NON_MOVABLE(CLASS)
Delete move ctor and move assign.
Default move ctor and move assign but enable default copy.
Definition at line 74 of file Easy.h.
◆ disable_use_as_copy_ctor
template<typename TBase , typename TDerived >
Prevent an universal ctor to be chosen as copy ctor.
struct FeedStrings
{
template<typename TARG, typename X = disable_use_as_copy_ctor<FeedStrings,TARG>>
FeedStrings( TARG && arg_r )
{}
template<typename ... Us>
FeedStrings( Us &&... us )
: ...
private:
Definition at line 98 of file Easy.h.