From 8695997eb5adb3c504c3615f0e6f3891a9b7ebde Mon Sep 17 00:00:00 2001 From: parker Date: Mon, 6 Nov 2017 12:18:12 +0800 Subject: Google::Protobuf::Struct can access a missing key (#3846) --- ruby/lib/google/protobuf/well_known_types.rb | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'ruby/lib') diff --git a/ruby/lib/google/protobuf/well_known_types.rb b/ruby/lib/google/protobuf/well_known_types.rb index 921ddbc0..e85fac56 100644 --- a/ruby/lib/google/protobuf/well_known_types.rb +++ b/ruby/lib/google/protobuf/well_known_types.rb @@ -149,6 +149,8 @@ module Google Struct.class_eval do def [](key) self.fields[key].to_ruby + rescue NoMethodError + nil end def []=(key, value) @@ -170,6 +172,10 @@ module Google hash.each { |key, val| ret[key] = val } ret end + + def has_key?(key) + self.fields.has_key?(key) + end end ListValue.class_eval do -- cgit v1.2.3