Module: ObjectExtender
- Defined in:
- lib/object_extender.rb,
lib/object_extender/version.rb
Defined Under Namespace
Classes: MultipleExtendedBlocks, MultipleExtendedClassBlocks
Constant Summary
collapse
- VERSION =
'1.0.0'
Instance Method Summary
collapse
Instance Method Details
#extended(obj = nil, &block) ⇒ Object
36
37
38
39
40
41
42
43
44
45
46
47
48
|
# 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) ⇒ Object
50
51
52
53
|
# 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
|