Sha256: 338f9efe320fff9ece9b77c35b4a1220ed12eb31a06e11570babbc7f1cf39ee5

Contents?: true

Size: 1.1 KB

Versions: 1

Compression:

Stored size: 1.1 KB

Contents

require "dry-struct"

module Types
  include Dry.Types()
end

module Roseflow
  module Pinecone
    class Index
      class Status < Dry::Struct
        transform_keys(&:to_sym)

        attribute :host, Types::Strict::String
        attribute :port, Types::Strict::Integer
        attribute :state, Types::Strict::String
        attribute :ready, Types::Strict::Bool
      end

      class Description < Dry::Struct
        transform_keys(&:to_sym)

        attribute :name, Types::Strict::String
        attribute :metric, Types::Strict::String
        attribute :dimension, Types::Strict::Integer
        attribute :replicas, Types::Strict::Integer
        attribute :shards, Types::Strict::Integer
        attribute :pods, Types::Strict::Integer
        attribute :pod_type, Types::Strict::String

        attribute :status, Status
      end
    end

    class Collection
      class Description < Dry::Struct
        transform_keys(&:to_sym)

        attribute :name, Types::Strict::String
        attribute :status, Types::Strict::String
        attribute :size, Types::Strict::Integer.default(0)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
roseflow-pinecone-0.1.0 lib/roseflow/pinecone/structs.rb