public boolean equals(MegaStruct that) {
    if (that == null)
      return false;
    if (this == that)
      return true;

    boolean this_present_my_bool = true && this.isSetMy_bool();
    boolean that_present_my_bool = true && that.isSetMy_bool();
    if (this_present_my_bool || that_present_my_bool) {
      if (!(this_present_my_bool && that_present_my_bool))
        return false;
      if (this.my_bool != that.my_bool)
        return false;
    }

    boolean this_present_my_byte = true && this.isSetMy_byte();
    boolean that_present_my_byte = true && that.isSetMy_byte();
    if (this_present_my_byte || that_present_my_byte) {
      if (!(this_present_my_byte && that_present_my_byte))
        return false;
      if (this.my_byte != that.my_byte)
        return false;
    }

    boolean this_present_my_16bit_int = true && this.isSetMy_16bit_int();
    boolean that_present_my_16bit_int = true && that.isSetMy_16bit_int();
    if (this_present_my_16bit_int || that_present_my_16bit_int) {
      if (!(this_present_my_16bit_int && that_present_my_16bit_int))
        return false;
      if (this.my_16bit_int != that.my_16bit_int)
        return false;
    }

    boolean this_present_my_32bit_int = true && this.isSetMy_32bit_int();
    boolean that_present_my_32bit_int = true && that.isSetMy_32bit_int();
    if (this_present_my_32bit_int || that_present_my_32bit_int) {
      if (!(this_present_my_32bit_int && that_present_my_32bit_int))
        return false;
      if (this.my_32bit_int != that.my_32bit_int)
        return false;
    }

    boolean this_present_my_64bit_int = true && this.isSetMy_64bit_int();
    boolean that_present_my_64bit_int = true && that.isSetMy_64bit_int();
    if (this_present_my_64bit_int || that_present_my_64bit_int) {
      if (!(this_present_my_64bit_int && that_present_my_64bit_int))
        return false;
      if (this.my_64bit_int != that.my_64bit_int)
        return false;
    }

    boolean this_present_my_double = true && this.isSetMy_double();
    boolean that_present_my_double = true && that.isSetMy_double();
    if (this_present_my_double || that_present_my_double) {
      if (!(this_present_my_double && that_present_my_double))
        return false;
      if (this.my_double != that.my_double)
        return false;
    }

    boolean this_present_my_string = true && this.isSetMy_string();
    boolean that_present_my_string = true && that.isSetMy_string();
    if (this_present_my_string || that_present_my_string) {
      if (!(this_present_my_string && that_present_my_string))
        return false;
      if (!this.my_string.equals(that.my_string))
        return false;
    }

    boolean this_present_my_binary = true && this.isSetMy_binary();
    boolean that_present_my_binary = true && that.isSetMy_binary();
    if (this_present_my_binary || that_present_my_binary) {
      if (!(this_present_my_binary && that_present_my_binary))
        return false;
      if (!this.my_binary.equals(that.my_binary))
        return false;
    }

    boolean this_present_my_string_string_map = true && this.isSetMy_string_string_map();
    boolean that_present_my_string_string_map = true && that.isSetMy_string_string_map();
    if (this_present_my_string_string_map || that_present_my_string_string_map) {
      if (!(this_present_my_string_string_map && that_present_my_string_string_map))
        return false;
      if (!this.my_string_string_map.equals(that.my_string_string_map))
        return false;
    }

    boolean this_present_my_string_enum_map = true && this.isSetMy_string_enum_map();
    boolean that_present_my_string_enum_map = true && that.isSetMy_string_enum_map();
    if (this_present_my_string_enum_map || that_present_my_string_enum_map) {
      if (!(this_present_my_string_enum_map && that_present_my_string_enum_map))
        return false;
      if (!this.my_string_enum_map.equals(that.my_string_enum_map))
        return false;
    }

    boolean this_present_my_enum_string_map = true && this.isSetMy_enum_string_map();
    boolean that_present_my_enum_string_map = true && that.isSetMy_enum_string_map();
    if (this_present_my_enum_string_map || that_present_my_enum_string_map) {
      if (!(this_present_my_enum_string_map && that_present_my_enum_string_map))
        return false;
      if (!this.my_enum_string_map.equals(that.my_enum_string_map))
        return false;
    }

    boolean this_present_my_enum_struct_map = true && this.isSetMy_enum_struct_map();
    boolean that_present_my_enum_struct_map = true && that.isSetMy_enum_struct_map();
    if (this_present_my_enum_struct_map || that_present_my_enum_struct_map) {
      if (!(this_present_my_enum_struct_map && that_present_my_enum_struct_map))
        return false;
      if (!this.my_enum_struct_map.equals(that.my_enum_struct_map))
        return false;
    }

    boolean this_present_my_enum_stringlist_map = true && this.isSetMy_enum_stringlist_map();
    boolean that_present_my_enum_stringlist_map = true && that.isSetMy_enum_stringlist_map();
    if (this_present_my_enum_stringlist_map || that_present_my_enum_stringlist_map) {
      if (!(this_present_my_enum_stringlist_map && that_present_my_enum_stringlist_map))
        return false;
      if (!this.my_enum_stringlist_map.equals(that.my_enum_stringlist_map))
        return false;
    }

    boolean this_present_my_enum_structlist_map = true && this.isSetMy_enum_structlist_map();
    boolean that_present_my_enum_structlist_map = true && that.isSetMy_enum_structlist_map();
    if (this_present_my_enum_structlist_map || that_present_my_enum_structlist_map) {
      if (!(this_present_my_enum_structlist_map && that_present_my_enum_structlist_map))
        return false;
      if (!this.my_enum_structlist_map.equals(that.my_enum_structlist_map))
        return false;
    }

    boolean this_present_my_stringlist = true && this.isSetMy_stringlist();
    boolean that_present_my_stringlist = true && that.isSetMy_stringlist();
    if (this_present_my_stringlist || that_present_my_stringlist) {
      if (!(this_present_my_stringlist && that_present_my_stringlist))
        return false;
      if (!this.my_stringlist.equals(that.my_stringlist))
        return false;
    }

    boolean this_present_my_structlist = true && this.isSetMy_structlist();
    boolean that_present_my_structlist = true && that.isSetMy_structlist();
    if (this_present_my_structlist || that_present_my_structlist) {
      if (!(this_present_my_structlist && that_present_my_structlist))
        return false;
      if (!this.my_structlist.equals(that.my_structlist))
        return false;
    }

    boolean this_present_my_enumlist = true && this.isSetMy_enumlist();
    boolean that_present_my_enumlist = true && that.isSetMy_enumlist();
    if (this_present_my_enumlist || that_present_my_enumlist) {
      if (!(this_present_my_enumlist && that_present_my_enumlist))
        return false;
      if (!this.my_enumlist.equals(that.my_enumlist))
        return false;
    }

    boolean this_present_my_stringset = true && this.isSetMy_stringset();
    boolean that_present_my_stringset = true && that.isSetMy_stringset();
    if (this_present_my_stringset || that_present_my_stringset) {
      if (!(this_present_my_stringset && that_present_my_stringset))
        return false;
      if (!this.my_stringset.equals(that.my_stringset))
        return false;
    }

    boolean this_present_my_enumset = true && this.isSetMy_enumset();
    boolean that_present_my_enumset = true && that.isSetMy_enumset();
    if (this_present_my_enumset || that_present_my_enumset) {
      if (!(this_present_my_enumset && that_present_my_enumset))
        return false;
      if (!this.my_enumset.equals(that.my_enumset))
        return false;
    }

    boolean this_present_my_structset = true && this.isSetMy_structset();
    boolean that_present_my_structset = true && that.isSetMy_structset();
    if (this_present_my_structset || that_present_my_structset) {
      if (!(this_present_my_structset && that_present_my_structset))
        return false;
      if (!this.my_structset.equals(that.my_structset))
        return false;
    }

    return true;
  }
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/MegaStruct.java