Module: Selenium::WebDriver::BiDi::Serialization::Record::Serializable Private
| Relationships & Source Files | |
| Defined in: | rb/lib/selenium/webdriver/bidi/serialization/record.rb |
Class Method Summary
- .as_json(value) Internal use only
Instance Method Summary
-
#as_json
Internal use only
Omit UNSET fields; emit null only for nullable ones.
Class Method Details
.as_json(value)
[ GitHub ]# File 'rb/lib/selenium/webdriver/bidi/serialization/record.rb', line 247
def self.as_json(value) case value when Serializable then value.as_json when ::Array then value.map { |element| as_json(element) } when ::Hash then value.transform_values { |element| as_json(element) } else value end end
Instance Method Details
#as_json
Omit UNSET fields; emit null only for nullable ones.
# File 'rb/lib/selenium/webdriver/bidi/serialization/record.rb', line 257
def as_json(*) payload = {} self.class.fields.each do |f| value = public_send(f.name) next if UNSET.equal?(value) next if value.nil? && !f.nullable value = Serialization.to_wire(value, Protocol.const_get(f.enum)) if f.enum payload[f.wire_key] = Serializable.as_json(value) end payload.merge!(extensions) if self.class.extensible? && !extensions.empty? payload end