Sha256: 652dff2cb3e7b1bec554ee05e56d7b26c41ab419f33f46709e094e165561610f

Contents?: true

Size: 870 Bytes

Versions: 4

Compression:

Stored size: 870 Bytes

Contents

module Indexed
  
  #
  #
  class Index
    
    attr_reader :name, :result_type, :combinator, :categories
    
    delegate :load_from_cache,
             :to => :categories
    
    def initialize name, options = {}
      @name                     = name
      
      @result_type              = options[:result_type] || name
      ignore_unassigned_tokens  = options[:ignore_unassigned_tokens] || false # TODO Move to query, somehow.
      
      @categories = Categories.new ignore_unassigned_tokens: ignore_unassigned_tokens
    end
    
    # TODO Spec. Doc.
    #
    def add_category category_name, options = {}
      new_category = Category.new category_name, self, options
      categories << new_category
      new_category
    end
    
    #
    #
    def possible_combinations token
      categories.possible_combinations_for token
    end
    
  end
  
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
picky-0.12.3 lib/picky/indexed/index.rb
picky-0.12.2 lib/picky/indexed/index.rb
picky-0.12.1 lib/picky/indexed/index.rb
picky-0.12.0 lib/picky/indexed/index.rb