public SpecValueSerialField DeepCopy() { var tmp173 = new SpecValueSerialField(); if (__isset.field_id) { tmp173.Field_id = this.Field_id; } tmp173.__isset.field_id = this.__isset.field_id; if ((Spec_int64 != null) && __isset.spec_int64) { tmp173.Spec_int64 = (SpecValueSerial_INT64)this.Spec_int64.DeepCopy(); } tmp173.__isset.spec_int64 = this.__isset.spec_int64; if ((Spec_double != null) && __isset.spec_double) { tmp173.Spec_double = (SpecValueSerial_DOUBLE)this.Spec_double.DeepCopy(); } tmp173.__isset.spec_double = this.__isset.spec_double; if ((Spec_bytes != null) && __isset.spec_bytes) { tmp173.Spec_bytes = (SpecValueSerial_BYTES)this.Spec_bytes.DeepCopy(); } tmp173.__isset.spec_bytes = this.__isset.spec_bytes; if ((Spec_key != null) && __isset.spec_key) { tmp173.Spec_key = (SpecValueSerial_KEY)this.Spec_key.DeepCopy(); } tmp173.__isset.spec_key = this.__isset.spec_key; if ((Spec_li != null) && __isset.spec_li) { tmp173.Spec_li = (SpecValueSerial_LI)this.Spec_li.DeepCopy(); } tmp173.__isset.spec_li = this.__isset.spec_li; if ((Spec_lb != null) && __isset.spec_lb) { tmp173.Spec_lb = (SpecValueSerial_LB)this.Spec_lb.DeepCopy(); } tmp173.__isset.spec_lb = this.__isset.spec_lb; return(tmp173); }
public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try { TField field; await iprot.ReadStructBeginAsync(cancellationToken); while (true) { field = await iprot.ReadFieldBeginAsync(cancellationToken); if (field.Type == TType.Stop) { break; } switch (field.ID) { case 1: if (field.Type == TType.I32) { Comp = (Comp)await iprot.ReadI32Async(cancellationToken); } else { await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: if (field.Type == TType.List) { { TList _list179 = await iprot.ReadListBeginAsync(cancellationToken); Fields = new List <SpecValueSerialField>(_list179.Count); for (int _i180 = 0; _i180 < _list179.Count; ++_i180) { SpecValueSerialField _elem181; _elem181 = new SpecValueSerialField(); await _elem181.ReadAsync(iprot, cancellationToken); Fields.Add(_elem181); } await iprot.ReadListEndAsync(cancellationToken); } } else { await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } await iprot.ReadFieldEndAsync(cancellationToken); } await iprot.ReadStructEndAsync(cancellationToken); } finally { iprot.DecrementRecursionDepth(); } }