Go to the source code of this file.
|
#define | DEF_REQ_FIELD(fname) bool has_##fname = false |
|
#define | PARSE_FIELD(msgtype, fname, ftype, _C_) |
|
#define | HANDLE_UNKNOWN_FIELD(fname, val) |
|
#define | OR_HANDLE_UNKNOWN_FIELD(fname, val) else HANDLE_UNKNOWN_FIELD( fname, val ) |
|
#define | BEGIN_PARSE_HEADERS |
|
#define | END_PARSE_HEADERS } |
|
#define | PARSE_REQ_FIELD(msgtype, fname, ftype) PARSE_FIELD( msgtype, fname, ftype, has_##fname = true; ) |
|
#define | OR_PARSE_REQ_FIELD(msgtype, fname, ftype) else PARSE_REQ_FIELD( msgtype, fname, ftype ) |
|
#define | PARSE_OPT_FIELD(msgtype, fname, ftype) PARSE_FIELD( msgtype, fname, ftype, ) |
|
#define | OR_PARSE_OPT_FIELD(msgtype, fname, ftype) else PARSE_OPT_FIELD( msgtype, fname, ftype ) |
|
#define | FAIL_IF_NOT_SEEN_REQ_FIELD(msgtype, fname) |
|
◆ DEF_REQ_FIELD
#define DEF_REQ_FIELD |
( |
|
fname | ) |
bool has_##fname = false |
◆ PARSE_FIELD
#define PARSE_FIELD |
( |
|
msgtype, |
|
|
|
fname, |
|
|
|
ftype, |
|
|
|
_C_ |
|
) |
| |
Value:if ( name == #fname ) { \
const auto &res = doParseField<ftype>( val, pMessage, #msgtype, #fname ); \
if ( !res ) { \
} \
_C_ \
}
◆ HANDLE_UNKNOWN_FIELD
#define HANDLE_UNKNOWN_FIELD |
( |
|
fname, |
|
|
|
val |
|
) |
| |
Value:{ \
pMessage.addValue( fname, val ); \
}
◆ OR_HANDLE_UNKNOWN_FIELD
◆ BEGIN_PARSE_HEADERS
#define BEGIN_PARSE_HEADERS |
Value:for ( const auto &header : msg.headerList() ) { \
const auto &name = header.first; \
const auto &val = header.second;
◆ END_PARSE_HEADERS
#define END_PARSE_HEADERS } |
◆ PARSE_REQ_FIELD
#define PARSE_REQ_FIELD |
( |
|
msgtype, |
|
|
|
fname, |
|
|
|
ftype |
|
) |
| PARSE_FIELD( msgtype, fname, ftype, has_##fname = true; ) |
◆ OR_PARSE_REQ_FIELD
#define OR_PARSE_REQ_FIELD |
( |
|
msgtype, |
|
|
|
fname, |
|
|
|
ftype |
|
) |
| else PARSE_REQ_FIELD( msgtype, fname, ftype ) |
◆ PARSE_OPT_FIELD
#define PARSE_OPT_FIELD |
( |
|
msgtype, |
|
|
|
fname, |
|
|
|
ftype |
|
) |
| PARSE_FIELD( msgtype, fname, ftype, ) |
◆ OR_PARSE_OPT_FIELD
#define OR_PARSE_OPT_FIELD |
( |
|
msgtype, |
|
|
|
fname, |
|
|
|
ftype |
|
) |
| else PARSE_OPT_FIELD( msgtype, fname, ftype ) |
◆ FAIL_IF_NOT_SEEN_REQ_FIELD
#define FAIL_IF_NOT_SEEN_REQ_FIELD |
( |
|
msgtype, |
|
|
|
fname |
|
) |
| |
Value:if ( !has_##fname ) \
return expected<ProvideMessage>::error(
ZYPP_EXCPT_PTR( InvalidMessageReceivedException(
zypp::str::Str() << #msgtype <<
" message does not contain required " << #fname <<
" field" ) ) )
#define ZYPP_EXCPT_PTR(EXCPT)
Drops a logline and returns Exception as a std::exception_ptr.
Convenient building of std::string via std::ostringstream Basically a std::ostringstream autoconverti...