module ActsAsRecursiveTree::Options::Values

Public Class Methods

create(value, config = nil) click to toggle source
# File lib/acts_as_recursive_tree/options/values.rb, line 67
def self.create(value, config = nil)
  klass = case value
          when ::Numeric, ::String
            SingleValue
          when ::ActiveRecord::Relation
            Relation
          when Range
            RangeValue
          when Enumerable
            MultiValue
          when ::ActiveRecord::Base
            ActiveRecord
          else
            raise "#{value.class} is not supported"
          end

  klass.new(value, config)
end