Class: ActiveAgent::Providers::OpenRouter::Requests::PluginsType
- Inherits:
-
ActiveModel::Type::Value
- Object
- ActiveModel::Type::Value
- ActiveAgent::Providers::OpenRouter::Requests::PluginsType
- Defined in:
- lib/active_agent/providers/open_router/requests/_types.rb
Overview
Type for Plugins (array of Plugin objects)
Instance Method Summary collapse
Instance Method Details
#cast(value) ⇒ Object
150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 |
# File 'lib/active_agent/providers/open_router/requests/_types.rb', line 150 def cast(value) case value when Array value.map do |item| case item when Plugin item when Hash Plugin.new(**item.deep_symbolize_keys) else raise ArgumentError, "Cannot cast #{item.class} to Plugin" end end when nil nil else raise ArgumentError, "Cannot cast #{value.class} to Array of Plugins" end end |
#deserialize(value) ⇒ Object
190 191 192 |
# File 'lib/active_agent/providers/open_router/requests/_types.rb', line 190 def deserialize(value) cast(value) end |
#serialize(value) ⇒ Object
170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 |
# File 'lib/active_agent/providers/open_router/requests/_types.rb', line 170 def serialize(value) case value when Array value.map do |item| case item when Plugin item.serialize when Hash item else raise ArgumentError, "Cannot serialize #{item.class}" end end when nil nil else raise ArgumentError, "Cannot serialize #{value.class}" end end |