module ObjectExtender

Constants

VERSION

Public Instance Methods

extended(obj = nil, &block) click to toggle source
# File lib/object_extender.rb, line 36
def extended(obj = nil, &block)
  if obj.nil?
    fail MultipleExtendedBlocks if instance_variable_defined?(:@_extended_block)
    @_extended_block = block
  else
    if instance_variable_defined?(:@_extended_class_block)
      obj.singleton_class.class_eval(&@_extended_class_block)
    end
    if instance_variable_defined?(:@_extended_block)
      obj.instance_eval(&@_extended_block)
    end
  end
end
extended_class(&block) click to toggle source
# File lib/object_extender.rb, line 50
def extended_class(&block)
  fail MultipleExtendedClassBlocks if instance_variable_defined?(:@_extended_class_block)
  @_extended_class_block = block
end