diff options
author | Josh Haberman <jhaberman@gmail.com> | 2015-05-08 16:56:29 -0700 |
---|---|---|
committer | Josh Haberman <jhaberman@gmail.com> | 2015-05-08 16:56:29 -0700 |
commit | 3bd691a4975b2267ff04611507e766a7f9f87e83 (patch) | |
tree | e5628144f6f920d9ccf792a1499e55503e6ff4d2 /upb/bindings/googlepb/proto2.cc | |
parent | 87fc2c516bff207f880c71526926842fd8dcc77e (diff) |
Google-internal development.
Diffstat (limited to 'upb/bindings/googlepb/proto2.cc')
-rw-r--r-- | upb/bindings/googlepb/proto2.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/upb/bindings/googlepb/proto2.cc b/upb/bindings/googlepb/proto2.cc index 3911172..87c13b6 100644 --- a/upb/bindings/googlepb/proto2.cc +++ b/upb/bindings/googlepb/proto2.cc @@ -946,14 +946,14 @@ case goog::FieldDescriptor::cpptype: \ public: typedef goog::Message Type; #ifdef GOOGLE_PROTOBUF_HAS_ARENAS - static ::proto2::Arena* GetArena(Type* t) { + static goog::Arena* GetArena(Type* t) { return t->GetArena(); } static void* GetMaybeArenaPointer(Type* t) { return t->GetMaybeArenaPointer(); } static inline Type* NewFromPrototype( - const Type* prototype, ::proto2::Arena* arena = NULL) { + const Type* prototype, goog::Arena* arena = NULL) { return prototype->New(arena); } static void Delete(Type* t, goog::Arena* arena = NULL) { @@ -1277,6 +1277,11 @@ case goog::FieldDescriptor::cpptype: \ return lazy_field_.SetAllocated(static_cast<proto2::Message*>(message)); } + virtual void UnsafeArenaSetAllocatedMessage(proto2::MessageLite* message) { + return lazy_field_.UnsafeArenaSetAllocated( + static_cast<proto2::Message*>(message)); + } + virtual proto2::MessageLite* ReleaseMessage( const proto2::MessageLite& prototype) { return lazy_field_.ReleaseByPrototype( |