123456789_123456789_123456789_123456789_123456789_

Class: Selenium::WebDriver::BiDi::Protocol::Script::RemoteValue Private

Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
Instance Chain:
Inherits: Selenium::WebDriver::BiDi::Serialization::Union
Defined in: rb/lib/selenium/webdriver/bidi/protocol/script.rb

Overview

Class Method Summary

::Selenium::WebDriver::BiDi::Serialization::Union - Inherited

.build

Outbound mirror of from_json: build the variant the command's kwargs describe so its typed as_json drives null-vs-absent per field (a flat hash through ::Selenium::WebDriver::BiDi::Transport cannot).

.discriminator

values maps each variant's discriminator symbol to its wire token, so an inbound payload tag (a wire string) can be matched to the symbol-keyed table.

.fallback,
.from_json

A non-Hash payload is a bare scalar arm (e.g.

.object_only

Declared (via the schema's objectOnly signal) on a union whose every arm is an object, so a non-Hash payload is a schema violation rather than a scalar arm.

.presence,
.scalar_values

Declared (via the schema's scalarValues signal) on a non-object_only union whose bare-scalar arms are a fixed set of literals (input.Origin's "viewport" / "pointer").

.valid_outbound?

Outbound mirror of from_json: is value one this union accepts? Any variant is accepted, and a variant that is itself a union recurses (e.g. LocalValue's RemoteReference fallback).

.variants,
.outbound_variant

An explicit nil kwarg still counts as supplied; a non-nullable field set to nil is rejected at construction (Data.new), not here.

.payload_tag

The wire tag mapped back to its variant symbol (the table's key); an unrecognized tag falls through as-is so select misses and from_json raises.

.scalar_arm?

A bare-scalar arm must be one of the literals the schema pinned for this union (scalar_values, e.g. input.Origin's "viewport" / "pointer").

.select

The discriminator value may legitimately be null (e.g.

.variant_accepts?

A variant that is itself a union recurses; a record variant is matched by instance.

.variant_for

The matching variant's ref, or nil when none matches (the fallback if declared).

.variant_refs

Every variant's class name: the discriminated table, the presence paths, and the fallback.

Class Method Details

.array

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 534

def self.array(**) = Script::ArrayRemoteValue.new(**)

.arraybuffer

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 548

def self.arraybuffer(**) = Script::ArrayBufferRemoteValue.new(**)

.bigint

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 532

def self.bigint(**) = Script::BigIntValue.new(**)

.boolean

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 531

def self.boolean(**) = Script::BooleanValue.new(**)

.date

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 538

def self.date(**) = Script::DateRemoteValue.new(**)

.error

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 544

def self.error(**) = Script::ErrorRemoteValue.new(**)

.function

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 536

def self.function(**) = Script::FunctionRemoteValue.new(**)

.generator

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 543

def self.generator(**) = Script::GeneratorRemoteValue.new(**)

.htmlcollection

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 550

def self.htmlcollection(**) = Script::HTMLCollectionRemoteValue.new(**)

.map

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 539

def self.map(**) = Script::MapRemoteValue.new(**)

.node

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 551

def self.node(**) = Script::NodeRemoteValue.new(**)

.nodelist

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 549

def self.nodelist(**) = Script::NodeListRemoteValue.new(**)

.null

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 528

def self.null(**) = Script::NullValue.new(**)

.number

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 530

def self.number(**) = Script::NumberValue.new(**)

.object

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 535

def self.object(**) = Script::ObjectRemoteValue.new(**)

.promise

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 546

def self.promise(**) = Script::PromiseRemoteValue.new(**)

.proxy

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 545

def self.proxy(**) = Script::ProxyRemoteValue.new(**)

.regexp

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 537

def self.regexp(**) = Script::RegExpRemoteValue.new(**)

.set

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 540

def self.set(**) = Script::SetRemoteValue.new(**)

.string

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 529

def self.string(**) = Script::StringValue.new(**)

.symbol

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 533

def self.symbol(**) = Script::SymbolRemoteValue.new(**)

.typedarray

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 547

def self.typedarray(**) = Script::TypedArrayRemoteValue.new(**)

.undefined

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 527

def self.undefined(**) = Script::UndefinedValue.new(**)

.weakmap

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 541

def self.weakmap(**) = Script::WeakMapRemoteValue.new(**)

.weakset

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 542

def self.weakset(**) = Script::WeakSetRemoteValue.new(**)

.window

[ GitHub ]

  
# File 'rb/lib/selenium/webdriver/bidi/protocol/script.rb', line 552

def self.window(**) = Script::WindowProxyRemoteValue.new(**)