MessagePack for C++
Macros
replace.hpp File Reference
#include <msgpack/preprocessor/arithmetic/dec.hpp>
#include <msgpack/preprocessor/arithmetic/inc.hpp>
#include <msgpack/preprocessor/config/config.hpp>
#include <msgpack/preprocessor/comparison/equal.hpp>
#include <msgpack/preprocessor/control/iif.hpp>
#include <msgpack/preprocessor/seq/first_n.hpp>
#include <msgpack/preprocessor/seq/rest_n.hpp>
#include <msgpack/preprocessor/seq/size.hpp>

Go to the source code of this file.

Macros

#define MSGPACK_PP_SEQ_REPLACE(seq, i, elem)   MSGPACK_PP_SEQ_REPLACE_I(seq, i, elem)
 
#define MSGPACK_PP_SEQ_REPLACE_I(seq, i, elem)   MSGPACK_PP_SEQ_FIRST_N(i, seq) (elem) MSGPACK_PP_SEQ_REPLACE_DETAIL_REST(seq, i)
 
#define MSGPACK_PP_SEQ_REPLACE_DETAIL_REST_EMPTY(seq, i)
 
#define MSGPACK_PP_SEQ_REPLACE_DETAIL_REST_VALID(seq, i)   MSGPACK_PP_SEQ_REST_N(MSGPACK_PP_INC(i), seq)
 
#define MSGPACK_PP_SEQ_REPLACE_DETAIL_REST(seq, i)
 

Macro Definition Documentation

◆ MSGPACK_PP_SEQ_REPLACE

#define MSGPACK_PP_SEQ_REPLACE (   seq,
  i,
  elem 
)    MSGPACK_PP_SEQ_REPLACE_I(seq, i, elem)

◆ MSGPACK_PP_SEQ_REPLACE_DETAIL_REST

#define MSGPACK_PP_SEQ_REPLACE_DETAIL_REST (   seq,
 
)
Value:
( \
MSGPACK_PP_EQUAL(i,MSGPACK_PP_DEC(MSGPACK_PP_SEQ_SIZE(seq))), \
MSGPACK_PP_SEQ_REPLACE_DETAIL_REST_EMPTY, \
MSGPACK_PP_SEQ_REPLACE_DETAIL_REST_VALID \
) \
(seq, i) \
#define MSGPACK_PP_SEQ_SIZE(seq)
Definition: size.hpp:28
#define MSGPACK_PP_DEC(x)
Definition: dec.hpp:24
#define MSGPACK_PP_IIF(bit, t, f)
Definition: iif.hpp:20

◆ MSGPACK_PP_SEQ_REPLACE_DETAIL_REST_EMPTY

#define MSGPACK_PP_SEQ_REPLACE_DETAIL_REST_EMPTY (   seq,
 
)

◆ MSGPACK_PP_SEQ_REPLACE_DETAIL_REST_VALID

#define MSGPACK_PP_SEQ_REPLACE_DETAIL_REST_VALID (   seq,
 
)    MSGPACK_PP_SEQ_REST_N(MSGPACK_PP_INC(i), seq)

◆ MSGPACK_PP_SEQ_REPLACE_I

#define MSGPACK_PP_SEQ_REPLACE_I (   seq,
  i,
  elem 
)    MSGPACK_PP_SEQ_FIRST_N(i, seq) (elem) MSGPACK_PP_SEQ_REPLACE_DETAIL_REST(seq, i)