Module: Pago::V2026_04::Unions::CustomerBenefitGrantUpdate
- Defined in:
- lib/pago/v2026_04/unions.rb,
sig/pago/v2026_04/generated.rbs
Overview
Variants: Models::CustomerBenefitGrantDiscordUpdate, Models::CustomerBenefitGrantGitHubRepositoryUpdate, Models::CustomerBenefitGrantDownloadablesUpdate, Models::CustomerBenefitGrantLicenseKeysUpdate, Models::CustomerBenefitGrantCustomUpdate, Models::CustomerBenefitGrantMeterCreditUpdate, Models::CustomerBenefitGrantFeatureFlagUpdate, Models::CustomerBenefitGrantSlackSharedChannelUpdate.
Constant Summary collapse
- DISCRIMINATOR =
"benefit_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.
289 290 291 292 |
# File 'lib/pago/v2026_04/unions.rb', line 289 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.
269 270 271 272 273 274 275 276 277 278 279 280 |
# File 'lib/pago/v2026_04/unions.rb', line 269 def self.mapping @mapping ||= { "custom" => Models::CustomerBenefitGrantCustomUpdate, "discord" => Models::CustomerBenefitGrantDiscordUpdate, "downloadables" => Models::CustomerBenefitGrantDownloadablesUpdate, "feature_flag" => Models::CustomerBenefitGrantFeatureFlagUpdate, "github_repository" => Models::CustomerBenefitGrantGitHubRepositoryUpdate, "license_keys" => Models::CustomerBenefitGrantLicenseKeysUpdate, "meter_credit" => Models::CustomerBenefitGrantMeterCreditUpdate, "slack_shared_channel" => Models::CustomerBenefitGrantSlackSharedChannelUpdate }.freeze end |
.variants ⇒ Array<Class>
Returns every model this union can resolve to.
283 284 285 |
# File 'lib/pago/v2026_04/unions.rb', line 283 def self.variants @variants ||= [Models::CustomerBenefitGrantDiscordUpdate, Models::CustomerBenefitGrantGitHubRepositoryUpdate, Models::CustomerBenefitGrantDownloadablesUpdate, Models::CustomerBenefitGrantLicenseKeysUpdate, Models::CustomerBenefitGrantCustomUpdate, Models::CustomerBenefitGrantMeterCreditUpdate, Models::CustomerBenefitGrantFeatureFlagUpdate, Models::CustomerBenefitGrantSlackSharedChannelUpdate].freeze end |