Sha256: 466b883c82a240eebb5f54b98129971d86c2deceb635c10f23bd5c1962ae18aa

Contents?: true

Size: 608 Bytes

Versions: 3

Compression:

Stored size: 608 Bytes

Contents

module ActsAsRecursiveTree
  module Options
    class QueryOptions

      STRATEGIES = %i[subselect, join].freeze

      attr_accessor :condition
      attr_reader :ensure_ordering, :query_strategy

      def depth
        @depth ||= DepthCondition.new
      end

      def ensure_ordering!
        @ensure_ordering = true
      end

      def depth_present?
        @depth.present?
      end

      def query_strategy=(strategy)
        raise "invalid strategy #{strategy} - only #{STRATEGIES} are allowed" unless STRATEGIES.include?(strategy)
        @query_strategy = strategy
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
acts_as_recursive_tree-2.2.1 lib/acts_as_recursive_tree/options/query_options.rb
acts_as_recursive_tree-2.2.0 lib/acts_as_recursive_tree/options/query_options.rb
acts_as_recursive_tree-2.1.1 lib/acts_as_recursive_tree/options/query_options.rb