@Override
    public void write(org.apache.thrift.protocol.TProtocol prot, Complex struct) throws org.apache.thrift.TException {
      org.apache.thrift.protocol.TTupleProtocol oprot = (org.apache.thrift.protocol.TTupleProtocol) prot;
      java.util.BitSet optionals = new java.util.BitSet();
      if (struct.isSetAint()) {
        optionals.set(0);
      }
      if (struct.isSetAString()) {
        optionals.set(1);
      }
      if (struct.isSetLint()) {
        optionals.set(2);
      }
      if (struct.isSetLString()) {
        optionals.set(3);
      }
      if (struct.isSetLintString()) {
        optionals.set(4);
      }
      if (struct.isSetMStringString()) {
        optionals.set(5);
      }
      if (struct.isSetAttributes()) {
        optionals.set(6);
      }
      if (struct.isSetUnionField1()) {
        optionals.set(7);
      }
      if (struct.isSetUnionField2()) {
        optionals.set(8);
      }
      if (struct.isSetUnionField3()) {
        optionals.set(9);
      }
      oprot.writeBitSet(optionals, 10);
      if (struct.isSetAint()) {
        oprot.writeI32(struct.aint);
      }
      if (struct.isSetAString()) {
        oprot.writeString(struct.aString);
      }
      if (struct.isSetLint()) {
        {
          oprot.writeI32(struct.lint.size());
          for (int _iter50 : struct.lint)
          {
            oprot.writeI32(_iter50);
          }
        }
      }
      if (struct.isSetLString()) {
        {
          oprot.writeI32(struct.lString.size());
          for (java.lang.String _iter51 : struct.lString)
          {
            oprot.writeString(_iter51);
          }
        }
      }
      if (struct.isSetLintString()) {
        {
          oprot.writeI32(struct.lintString.size());
          for (IntString _iter52 : struct.lintString)
          {
            _iter52.write(oprot);
          }
        }
      }
      if (struct.isSetMStringString()) {
        {
          oprot.writeI32(struct.mStringString.size());
          for (java.util.Map.Entry<java.lang.String, java.lang.String> _iter53 : struct.mStringString.entrySet())
          {
            oprot.writeString(_iter53.getKey());
            oprot.writeString(_iter53.getValue());
          }
        }
      }
      if (struct.isSetAttributes()) {
        {
          oprot.writeI32(struct.attributes.size());
          for (java.util.Map.Entry<java.lang.String, java.util.Map<java.lang.String,java.util.Map<java.lang.String,PropValueUnion>>> _iter54 : struct.attributes.entrySet())
          {
            oprot.writeString(_iter54.getKey());
            {
              oprot.writeI32(_iter54.getValue().size());
              for (java.util.Map.Entry<java.lang.String, java.util.Map<java.lang.String,PropValueUnion>> _iter55 : _iter54.getValue().entrySet())
              {
                oprot.writeString(_iter55.getKey());
                {
                  oprot.writeI32(_iter55.getValue().size());
                  for (java.util.Map.Entry<java.lang.String, PropValueUnion> _iter56 : _iter55.getValue().entrySet())
                  {
                    oprot.writeString(_iter56.getKey());
                    _iter56.getValue().write(oprot);
                  }
                }
              }
            }
          }
        }
      }
      if (struct.isSetUnionField1()) {
        struct.unionField1.write(oprot);
      }
      if (struct.isSetUnionField2()) {
        struct.unionField2.write(oprot);
      }
      if (struct.isSetUnionField3()) {
        struct.unionField3.write(oprot);
      }
    }
Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise
serde/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/serde2/thrift/test/Complex.java