32 #ifndef LEDGER_CORE_ABSTRACTTRANSACTIONSBULKPARSER_H    33 #define LEDGER_CORE_ABSTRACTTRANSACTIONSBULKPARSER_H    35 #define PROXY_PARSE_TXS(method, ...)                                            \    37         return getTransactionsParser().method(__VA_ARGS__);                     \    44         template <
typename BlockchainExplorerTransactionsBulk, 
typename TxsParser>
    53                 if (getLastKey() == 
"truncated" && _depth == 0) {
    56                 PROXY_PARSE_TXS(Bool, b)
    60                 PROXY_PARSE_TXS(Int, i)
    63             bool Uint(
unsigned i) {
    64                 PROXY_PARSE_TXS(Uint, i)
    67             bool Int64(int64_t i) {
    68                 PROXY_PARSE_TXS(Int64, i)
    71             bool Uint64(uint64_t i) {
    72                 PROXY_PARSE_TXS(Uint64, i)
    75             bool Double(
double d) {
    76                 PROXY_PARSE_TXS(Double, d)
    79             bool RawNumber(
const rapidjson::Reader::Ch *str, rapidjson::SizeType length, 
bool copy) {
    80                 PROXY_PARSE_TXS(RawNumber, str, length, copy)
    83             bool String(
const rapidjson::Reader::Ch *str, rapidjson::SizeType length, 
bool copy) {
    84                 PROXY_PARSE_TXS(
String, str, length, copy)
    88                 PROXY_PARSE_TXS(StartObject)
    91             bool Key(
const rapidjson::Reader::Ch *str, rapidjson::SizeType length, 
bool copy) {
    92                 PROXY_PARSE_TXS(Key, str, length, copy)
    95             bool EndObject(rapidjson::SizeType memberCount) {
    96                 PROXY_PARSE_TXS(EndObject, memberCount)
   100                 if (_depth >= 1 || getLastKey() == 
"txs") {
   105                     getTransactionsParser().init(&_bulk->transactions);
   108                 PROXY_PARSE_TXS(StartArray)
   111             bool EndArray(rapidjson::SizeType elementCount) {
   116                 PROXY_PARSE_TXS(EndArray, elementCount)
   119             void init(BlockchainExplorerTransactionsBulk *bulk) {
   124             virtual TxsParser &getTransactionsParser() = 0;
   125             virtual std::string &getLastKey() = 0;
   127             BlockchainExplorerTransactionsBulk* _bulk;
   133 #endif //LEDGER_CORE_ABSTRACTTRANSACTIONSBULKPARSER_H Definition: Account.cpp:8
Definition: AbstractTransactionsBulkParser.h:45