1 // Protocol Buffers - Google's data interchange format 2 // Copyright 2023 Google Inc. All rights reserved. 3 // 4 // Use of this source code is governed by a BSD-style 5 // license that can be found in the LICENSE file or at 6 // https://developers.google.com/open-source/licenses/bsd 7 8 // ----------------------------------------------------------------------------- 9 // Ruby <-> upb data conversion functions. Strictly free of dependencies on 10 // Ruby interpreter internals. 11 12 #ifndef RUBY_PROTOBUF_SHARED_CONVERT_H_ 13 #define RUBY_PROTOBUF_SHARED_CONVERT_H_ 14 15 #include "ruby-upb.h" 16 #include "shared_message.h" 17 18 bool shared_Msgval_IsEqual(upb_MessageValue val1, upb_MessageValue val2, 19 upb_CType type, const upb_MessageDef* msgdef, 20 upb_Status* status); 21 22 uint64_t shared_Msgval_GetHash(upb_MessageValue val, upb_CType type, 23 const upb_MessageDef* msgdef, uint64_t seed, 24 upb_Status* status); 25 26 #endif // RUBY_PROTOBUF_SHARED_CONVERT_H_ 27