Exemplo n.º 1
0
    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);
    }
Exemplo n.º 2
0
    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();
        }
    }