in remote/gen-cpp/shared_types.cpp [680:764]
uint32_t PostData::read(::apache::thrift::protocol::TProtocol* iprot) {
::apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
uint32_t xfer = 0;
std::string fname;
::apache::thrift::protocol::TType ftype;
int16_t fid;
xfer += iprot->readStructBegin(fname);
using ::apache::thrift::protocol::TProtocolException;
bool isset_isNull = false;
bool isset_isReadOnly = false;
bool isset_hasExcludedElements = false;
while (true)
{
xfer += iprot->readFieldBegin(fname, ftype, fid);
if (ftype == ::apache::thrift::protocol::T_STOP) {
break;
}
switch (fid)
{
case 1:
if (ftype == ::apache::thrift::protocol::T_BOOL) {
xfer += iprot->readBool(this->isNull);
isset_isNull = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_BOOL) {
xfer += iprot->readBool(this->isReadOnly);
isset_isReadOnly = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 3:
if (ftype == ::apache::thrift::protocol::T_BOOL) {
xfer += iprot->readBool(this->hasExcludedElements);
isset_hasExcludedElements = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 4:
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->elements.clear();
uint32_t _size16;
::apache::thrift::protocol::TType _etype19;
xfer += iprot->readListBegin(_etype19, _size16);
this->elements.resize(_size16);
uint32_t _i20;
for (_i20 = 0; _i20 < _size16; ++_i20)
{
xfer += this->elements[_i20].read(iprot);
}
xfer += iprot->readListEnd();
}
this->__isset.elements = true;
} else {
xfer += iprot->skip(ftype);
}
break;
default:
xfer += iprot->skip(ftype);
break;
}
xfer += iprot->readFieldEnd();
}
xfer += iprot->readStructEnd();
if (!isset_isNull)
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_isReadOnly)
throw TProtocolException(TProtocolException::INVALID_DATA);
if (!isset_hasExcludedElements)
throw TProtocolException(TProtocolException::INVALID_DATA);
return xfer;
}