diff options
-rw-r--r-- | sql/field.cc | 6 | ||||
-rw-r--r-- | sql/field.h | 10 | ||||
-rw-r--r-- | sql/field_conv.cc | 2 |
3 files changed, 9 insertions, 9 deletions
diff --git a/sql/field.cc b/sql/field.cc index f2d2aed63d0..cf18ffd1875 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -8863,7 +8863,7 @@ void Field_set::sql_type(String &res) const 0 if the fields are unequally defined */ -bool Field::eq_def(const Field *field) +bool Field::eq_def(const Field *field) const { if (real_type() != field->real_type() || charset() != field->charset() || pack_length() != field->pack_length()) @@ -8895,7 +8895,7 @@ static bool compare_type_names(CHARSET_INFO *charset, TYPELIB *t1, TYPELIB *t2) returns 1 if the fields are equally defined */ -bool Field_enum::eq_def(const Field *field) +bool Field_enum::eq_def(const Field *field) const { TYPELIB *values; @@ -8972,7 +8972,7 @@ const uchar *Field_enum::unpack(uchar *to, const uchar *from, @return returns 1 if the fields are equally defined */ -bool Field_num::eq_def(const Field *field) +bool Field_num::eq_def(const Field *field) const { if (!Field::eq_def(field)) return 0; diff --git a/sql/field.h b/sql/field.h index 088c82dee5e..ca8859f9375 100644 --- a/sql/field.h +++ b/sql/field.h @@ -792,7 +792,7 @@ public: return (ptr == field->ptr && null_ptr == field->null_ptr && null_bit == field->null_bit && field->type() == type()); } - virtual bool eq_def(const Field *field); + virtual bool eq_def(const Field *field) const; /* pack_length() returns size (in bytes) used to store field data in memory @@ -1518,7 +1518,7 @@ public: void make_field(Send_field *); uint decimals() const { return (uint) dec; } uint size_of() const { return sizeof(*this); } - bool eq_def(const Field *field); + bool eq_def(const Field *field) const; int save_in_field(Field *to) { return to->store(val_int(), MY_TEST(flags & UNSIGNED_FLAG)); @@ -2151,7 +2151,7 @@ public: enum Item_result cmp_type () const { return TIME_RESULT; } bool val_bool() { return val_real() != 0e0; } uint is_equal(Create_field *new_field); - bool eq_def(const Field *field) + bool eq_def(const Field *field) const { return (Field::eq_def(field) && decimals() == field->decimals()); } @@ -3302,7 +3302,7 @@ public: uint row_pack_length() const { return pack_length(); } virtual bool zero_pack() const { return 0; } bool optimize_range(uint idx, uint part) { return 0; } - bool eq_def(const Field *field); + bool eq_def(const Field *field) const; bool has_charset(void) const { return TRUE; } /* enum and set are sorted as integers */ CHARSET_INFO *sort_charset(void) const { return &my_charset_bin; } @@ -3697,7 +3697,7 @@ class Copy_field :public Sql_alloc { get_copy_func. */ typedef void Copy_func(Copy_field*); - Copy_func *get_copy_func(Field *to, Field *from); + Copy_func *get_copy_func(const Field *to, const Field *from); public: uchar *from_ptr,*to_ptr; uchar *from_null_ptr,*to_null_ptr; diff --git a/sql/field_conv.cc b/sql/field_conv.cc index d3aa21e1fb5..3d9c25a69d1 100644 --- a/sql/field_conv.cc +++ b/sql/field_conv.cc @@ -703,7 +703,7 @@ void Copy_field::set(Field *to,Field *from,bool save) Copy_field::Copy_func * -Copy_field::get_copy_func(Field *to,Field *from) +Copy_field::get_copy_func(const Field *to, const Field *from) { if (to->flags & BLOB_FLAG) { |