class SmoothOperator::Associations::Reflection

Attributes

klass[R]
name[R]
options[R]

Public Class Methods

new(class_name, options) click to toggle source
# File lib/smooth_operator/associations/reflection.rb, line 7
def initialize(class_name, options)
  options = options.is_a?(Hash) ? options : {}

  @name, @options = class_name, options

  @klass = options[:class_name] || klass_default(@name)

  if options.include?(:class_name) && options[:class_name].nil?
    @klass = nil
  elsif @klass.is_a?(String)
    @klass = @klass.constantize rescue OpenStruct
  end
end

Public Instance Methods

plural_name() click to toggle source
# File lib/smooth_operator/associations/reflection.rb, line 25
def plural_name
  @plural_name ||= options[:plural_name] || name.to_s.pluralize
end
single_name() click to toggle source
# File lib/smooth_operator/associations/reflection.rb, line 21
def single_name
  @single_name ||= options[:single_name] || name.to_s.singularize
end