@Override
    public void write(org.apache.amoro.shade.thrift.org.apache.thrift.protocol.TProtocol prot, Schema struct) throws org.apache.amoro.shade.thrift.org.apache.thrift.TException {
      org.apache.amoro.shade.thrift.org.apache.thrift.protocol.TTupleProtocol oprot = (org.apache.amoro.shade.thrift.org.apache.thrift.protocol.TTupleProtocol) prot;
      java.util.BitSet optionals = new java.util.BitSet();
      if (struct.isSetColumns()) {
        optionals.set(0);
      }
      if (struct.isSetPks()) {
        optionals.set(1);
      }
      if (struct.isSetPartitionColumns()) {
        optionals.set(2);
      }
      if (struct.isSetSortColumns()) {
        optionals.set(3);
      }
      oprot.writeBitSet(optionals, 4);
      if (struct.isSetColumns()) {
        {
          oprot.writeI32(struct.columns.size());
          for (ColumnInfo _iter16 : struct.columns)
          {
            _iter16.write(oprot);
          }
        }
      }
      if (struct.isSetPks()) {
        {
          oprot.writeI32(struct.pks.size());
          for (ColumnInfo _iter17 : struct.pks)
          {
            _iter17.write(oprot);
          }
        }
      }
      if (struct.isSetPartitionColumns()) {
        {
          oprot.writeI32(struct.partitionColumns.size());
          for (ColumnInfo _iter18 : struct.partitionColumns)
          {
            _iter18.write(oprot);
          }
        }
      }
      if (struct.isSetSortColumns()) {
        {
          oprot.writeI32(struct.sortColumns.size());
          for (ColumnInfo _iter19 : struct.sortColumns)
          {
            _iter19.write(oprot);
          }
        }
      }
    }
Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise
amoro-common/src/main/gen-java/org/apache/amoro/api/Schema.java