|
|
@ -697,16 +697,13 @@ bool Message_Equal(const upb_msg *m1, const upb_msg *m2, const upb_msgdef *m) { |
|
|
|
* field is of a primitive type). |
|
|
|
* field is of a primitive type). |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
static VALUE Message_eq(VALUE _self, VALUE _other) { |
|
|
|
static VALUE Message_eq(VALUE _self, VALUE _other) { |
|
|
|
if (TYPE(_self) != TYPE(_other)) { |
|
|
|
if (CLASS_OF(_self) != CLASS_OF(_other)) return Qfalse; |
|
|
|
return Qfalse; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Message* self = ruby_to_Message(_self); |
|
|
|
Message* self = ruby_to_Message(_self); |
|
|
|
Message* other = ruby_to_Message(_other); |
|
|
|
Message* other = ruby_to_Message(_other); |
|
|
|
|
|
|
|
assert(self->msgdef == other->msgdef); |
|
|
|
|
|
|
|
|
|
|
|
return Message_Equal(self->msg, other->msg, self->msgdef) |
|
|
|
return Message_Equal(self->msg, other->msg, self->msgdef) ? Qtrue : Qfalse; |
|
|
|
? Qtrue |
|
|
|
|
|
|
|
: Qfalse; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
uint64_t Message_Hash(const upb_msg* msg, const upb_msgdef* m, uint64_t seed) { |
|
|
|
uint64_t Message_Hash(const upb_msg* msg, const upb_msgdef* m, uint64_t seed) { |
|
|
|