class Anthropic::Internal::Type::ArrayOf

def coerce(value, state:)

Returns:
  • (Array, Object) -
    Options Hash: (**state)
    • :branched (Integer) --
    • :error (Class) --
    • :exactness (Hash{Symbol=>Object}) --
    • :strictness (Boolean) --
    • :translate_names (Boolean) --

    Parameters:
    • state (Hash{Symbol=>Object}) -- .
    • value (Array, Object) --
      Other tags:
        Api: - private
      def coerce(value, state:)
        exactness = state.fetch(:exactness)
        unless value.is_a?(Array)
          exactness[:no] += 1
          state[:error] = TypeError.new("#{value.class} can't be coerced into #{Array}")
          return value
        end
        target = item_type
        exactness[:yes] += 1
        value
          .map do |item|
            case [nilable?, item]
            in [true, nil]
              exactness[:yes] += 1
              nil
            else
              Anthropic::Internal::Type::Converter.coerce(target, item, state: state)
            end
          end
      end