Class: ActiveAgent::Providers::OpenRouter::Requests::MaxPriceType

Inherits:
ActiveModel::Type::Value
  • Object
show all
Defined in:
lib/active_agent/providers/open_router/requests/_types.rb,
lib/active_agent/providers/open_router/requests/provider_preferences/_types.rb

Overview

Type for MaxPrice

Instance Method Summary collapse

Instance Method Details

#cast(value) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/active_agent/providers/open_router/requests/_types.rb', line 18

def cast(value)
  case value
  when MaxPrice
    value
  when Hash
    MaxPrice.new(**value.deep_symbolize_keys)
  when nil
    nil
  else
    raise ArgumentError, "Cannot cast #{value.class} to MaxPrice"
  end
end

#deserialize(value) ⇒ Object



44
45
46
# File 'lib/active_agent/providers/open_router/requests/_types.rb', line 44

def deserialize(value)
  cast(value)
end

#serialize(value) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/active_agent/providers/open_router/requests/_types.rb', line 31

def serialize(value)
  case value
  when MaxPrice
    value.serialize
  when Hash
    value
  when nil
    nil
  else
    raise ArgumentError, "Cannot serialize #{value.class}"
  end
end