module Transpose::Transposable
Public Instance Methods
transpose(klass)
click to toggle source
# File lib/transpose/transposable.rb, line 17 def transpose(klass) transposition_instance = klass.is_a?(String) ? klass.constantize.new : klass.new raise ::Transpose::Errors::TransposerNotFound unless self.class.transposers.has_key?(transposition_instance.class.name) result = self.class.transposers[klass.to_s].inject(transposition_instance) do |transposition, hash_pair| transposition.__send__("#{hash_pair[1]}=", self.__send__(hash_pair[0])) transposition end result end
Also aliased as: transpose_to, transpose_into
transpose_instance(transposition_instance)
click to toggle source
# File lib/transpose/transposable.rb, line 32 def transpose_instance(transposition_instance) raise ::Transpose::TransposerNotFound unless self.class.transposers.has_key?(transposition_instance.class.name) result = self.class.transposers[transposition_instance.class.name].inject(transposition_instance) do |transposition, hash_pair| transposition.__send__("#{hash_pair[1]}=", self.__send__(hash_pair[0])) transposition end result end
Also aliased as: transpose_to_instance, transpose_with_instance