Module: Pago::V2026_04::Unions::Customer
- Defined in:
- lib/pago/v2026_04/unions.rb,
sig/pago/v2026_04/generated.rbs
Overview
Variants: Models::CustomerIndividual, Models::CustomerTeam.
Constant Summary collapse
- DISCRIMINATOR =
"type"
Class Method Summary collapse
-
.from_json(data) ⇒ Object?
The resolved variant, or the raw payload.
-
.mapping ⇒ Hash{String => Class}
Discriminator value to model class.
-
.variants ⇒ Array<Class>
Every model this union can resolve to.
Class Method Details
.from_json(data) ⇒ Object?
Returns the resolved variant, or the raw payload.
238 239 240 241 |
# File 'lib/pago/v2026_04/unions.rb', line 238 def self.from_json(data) data = ::JSON.parse(data) if data.is_a?(String) ::Pago::Serde.union(data, discriminator: DISCRIMINATOR, mapping: mapping, variants: variants) end |
.mapping ⇒ Hash{String => Class}
Returns discriminator value to model class.
224 225 226 227 228 229 |
# File 'lib/pago/v2026_04/unions.rb', line 224 def self.mapping @mapping ||= { "individual" => Models::CustomerIndividual, "team" => Models::CustomerTeam }.freeze end |
.variants ⇒ Array<Class>
Returns every model this union can resolve to.
232 233 234 |
# File 'lib/pago/v2026_04/unions.rb', line 232 def self.variants @variants ||= [Models::CustomerIndividual, Models::CustomerTeam].freeze end |