lib/data_provider/base.rb in data-provider-0.2.0 vs lib/data_provider/base.rb in data-provider-0.2.1
- old
+ new
@@ -172,11 +172,13 @@
def add _module
if _module.is_a?(DataProvider::Container)
_dpc = _module
else
_dpc = _module.dpc
- self.class.include _module # todo: make optional?
+ self.class.class_eval do
+ include _module # todo: make optional?
+ end
end
self.class.new(options.merge({
:data => nil,
:dpc => dpc.add(_dpc)
@@ -186,11 +188,13 @@
def add_scoped _module, options = {}
if _module.is_a?(DataProvider::Container)
_dpc = _module
else
_dpc = _module.dpc
- self.class.include _module # todo: make optional?
+ self.class.class_eval do
+ include _module # todo: make optional?
+ end
end
self.class.new(options.merge({
:data => nil,
:dpc => dpc.add_scoped(_dpc, :scope => options[:scope])
@@ -207,21 +211,25 @@
def add! _module
if _module.is_a?(DataProvider::Container)
dpc.add!(_module)
else
dpc.add!(_module.dpc)
- self.class.include _module
+ self.class.class_eval do
+ include _module
+ end
end
return self
end
def add_scoped! _module, options = {}
if _module.is_a?(DataProvider::Container)
dpc.add_scoped!(_module, options)
else
dpc.add_scoped! _module.dpc, options
- self.class.include _module
+ self.class.class_eval do
+ include _module
+ end
end
return self
end
end # module InstanceMethods
\ No newline at end of file