Sha256: d395d95b8928d26190a4f224b208c8f68ea7dc553d63fa204c31cf05e4347019

Contents?: true

Size: 670 Bytes

Versions: 5

Compression:

Stored size: 670 Bytes

Contents

require 'rom/types'

module ROM
  module Elasticsearch
    # Elasticsearch types use by schema attributes
    #
    # @api public
    module Types
      include ROM::Types

      # Default integer primary key
      ID = Int.meta(primary_key: true)

      # Define a keywoard attribute type
      #
      # @return [Dry::Types::Type]
      #
      # @api public
      def self.Keyword(meta = {})
        String.meta(type: "keyword").meta(meta)
      end

      # Define a keywoard attribute type
      #
      # @return [Dry::Types::Type]
      #
      # @api public
      def self.Text(meta = {})
        String.meta(type: "text").meta(meta)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rom-elasticsearch-0.3.0 lib/rom/elasticsearch/types.rb
rom-elasticsearch-0.2.1 lib/rom/elasticsearch/types.rb
rom-elasticsearch-0.2.0 lib/rom/elasticsearch/types.rb
rom-elasticsearch-0.1.1 lib/rom/elasticsearch/types.rb
rom-elasticsearch-0.1.0 lib/rom/elasticsearch/types.rb