Module: RubyLLM::Contract::Concerns::DeepSymbolize

Included in:
Parser, SchemaValidator
Defined in:
lib/ruby_llm/contract/concerns/deep_symbolize.rb

Instance Method Summary collapse

Instance Method Details

#deep_symbolize(obj) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/ruby_llm/contract/concerns/deep_symbolize.rb', line 7

def deep_symbolize(obj)
  case obj
  when Hash then obj.transform_keys(&:to_sym).transform_values { |val| deep_symbolize(val) }
  when Array then obj.map { |val| deep_symbolize(val) }
  else obj
  end
end