/**
* Autogenerated by Thrift
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
*/
#include "employee_types.h"
namespace com { namespace XXXX { namespace thrift { namespace employee {
const char* SavingsInfo::ascii_fingerprint = "C712EF0DA8599E55DF4D0F13415232EF";
const uint8_t SavingsInfo::binary_fingerprint[16] = {0xC7,0x12,0xEF,0x0D,0xA8,0x59,0x9E,0x55,0xDF,0x4D,0x0F,0x13,0x41,0x52,0x32,0xEF};
uint32_t SavingsInfo::read(::apache::thrift::protocol::TProtocol* 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;
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_STRING) {
xfer += iprot->readString(this->name);
this->__isset.name = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_DOUBLE) {
xfer += iprot->readDouble(this->amount);
this->__isset.amount = true;
} else {
xfer += iprot->skip(ftype);
}
break;
default:
xfer += iprot->skip(ftype);
break;
}
xfer += iprot->readFieldEnd();
}
xfer += iprot->readStructEnd();
return xfer;
}
uint32_t SavingsInfo::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
xfer += oprot->writeStructBegin("SavingsInfo");
xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 1);
xfer += oprot->writeString(this->name);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldBegin("amount", ::apache::thrift::protocol::T_DOUBLE, 2);
xfer += oprot->writeDouble(this->amount);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
return xfer;
}
const char* EmployeeInfo::ascii_fingerprint = "A4FF48ACFB0D366A1E3031B5F13B70F0";
const uint8_t EmployeeInfo::binary_fingerprint[16] = {0xA4,0xFF,0x48,0xAC,0xFB,0x0D,0x36,0x6A,0x1E,0x30,0x31,0xB5,0xF1,0x3B,0x70,0xF0};
uint32_t EmployeeInfo::read(::apache::thrift::protocol::TProtocol* 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;
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_I32) {
xfer += iprot->readI32(this->id);
this->__isset.id = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_STRING) {
xfer += iprot->readString(this->name);
this->__isset.name = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 3:
if (ftype == ::apache::thrift::protocol::T_DOUBLE) {
xfer += iprot->readDouble(this->salary);
this->__isset.salary = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 4:
if (ftype == ::apache::thrift::protocol::T_BOOL) {
xfer += iprot->readBool(this->contract);
this->__isset.contract = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 5:
if (ftype == ::apache::thrift::protocol::T_SET) {
{
this->dependents.clear();
uint32_t _size0;
::apache::thrift::protocol::TType _etype3;
iprot->readSetBegin(_etype3, _size0);
uint32_t _i4;
for (_i4 = 0; _i4 < _size0; ++_i4)
{
std::string _elem5;
xfer += iprot->readString(_elem5);
this->dependents.insert(_elem5);
}
iprot->readSetEnd();
}
this->__isset.dependents = true;
} else {
xfer += iprot->skip(ftype);
}
break;
case 6:
if (ftype == ::apache::thrift::protocol::T_SET) {
{
this->savings.clear();
uint32_t _size6;
::apache::thrift::protocol::TType _etype9;
iprot->readSetBegin(_etype9, _size6);
uint32_t _i10;
for (_i10 = 0; _i10 < _size6; ++_i10)
{
SavingsInfo _elem11;
xfer += _elem11.read(iprot);
this->savings.insert(_elem11);
}
iprot->readSetEnd();
}
this->__isset.savings = true;
} else {
xfer += iprot->skip(ftype);
}
break;
default:
xfer += iprot->skip(ftype);
break;
}
xfer += iprot->readFieldEnd();
}
xfer += iprot->readStructEnd();
return xfer;
}
uint32_t EmployeeInfo::write(::apache::thrift::protocol::TProtocol* oprot) const {
uint32_t xfer = 0;
xfer += oprot->writeStructBegin("EmployeeInfo");
xfer += oprot->writeFieldBegin("id", ::apache::thrift::protocol::T_I32, 1);
xfer += oprot->writeI32(this->id);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 2);
xfer += oprot->writeString(this->name);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldBegin("salary", ::apache::thrift::protocol::T_DOUBLE, 3);
xfer += oprot->writeDouble(this->salary);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldBegin("contract", ::apache::thrift::protocol::T_BOOL, 4);
xfer += oprot->writeBool(this->contract);
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldBegin("dependents", ::apache::thrift::protocol::T_SET, 5);
{
xfer += oprot->writeSetBegin(::apache::thrift::protocol::T_STRING, this->dependents.size());
std::set<std::string> ::const_iterator _iter12;
for (_iter12 = this->dependents.begin(); _iter12 != this->dependents.end(); ++_iter12)
{
xfer += oprot->writeString((*_iter12));
}
xfer += oprot->writeSetEnd();
}
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldBegin("savings", ::apache::thrift::protocol::T_SET, 6);
{
xfer += oprot->writeSetBegin(::apache::thrift::protocol::T_STRUCT, this->savings.size());
std::set<SavingsInfo> ::const_iterator _iter13;
for (_iter13 = this->savings.begin(); _iter13 != this->savings.end(); ++_iter13)
{
xfer += (*_iter13).write(oprot);
}
xfer += oprot->writeSetEnd();
}
xfer += oprot->writeFieldEnd();
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
return xfer;
}
}}}} // namespace