public void Write(TProtocol oprot) {
TStruct struc = new TStruct("SlicePredicate");
oprot.WriteStructBegin(struc);
TField field = new TField();
if (Column_names != null && __isset.column_names) {
field.Name = "column_names";
field.Type = TType.List;
field.ID = 1;
oprot.WriteFieldBegin(field);
{
oprot.WriteListBegin(new TList(TType.String, Column_names.Count));
foreach (byte[] _iter11 in Column_names)
{
oprot.WriteBinary(_iter11);
}
oprot.WriteListEnd();
}
oprot.WriteFieldEnd();
}
if (Slice_range != null && __isset.slice_range) {
field.Name = "slice_range";
field.Type = TType.Struct;
field.ID = 2;
oprot.WriteFieldBegin(field);
Slice_range.Write(oprot);
oprot.WriteFieldEnd();
}
oprot.WriteFieldStop();
oprot.WriteStructEnd();
}