lib/aspect4r/base.rb in aspect4r-0.8.1 vs lib/aspect4r/base.rb in aspect4r-0.8.2
- old
+ new
@@ -5,18 +5,18 @@
require 'aspect4r/model/advice_metadata'
require 'aspect4r/return_this'
require 'aspect4r/helper'
-require 'aspect4r/extensions/class_extension'
require 'aspect4r/extensions/module_extension'
module Aspect4r
module Base
def self.included(base)
base.send(:include, InstanceMethods)
base.extend(ClassMethods)
+ base.instance_variable_set('@a4r_data', Aspect4r::Model::AspectData.new(base))
end
module InstanceMethods
def a4r_invoke proxy, *args
proxy.bind(self).call *args
@@ -26,14 +26,14 @@
module ClassMethods
def a4r_data
@a4r_data ||= Aspect4r::Model::AspectData.new(self)
end
- def a4r_group
+ def a4r_group &block
a4r_data.change_group
if block_given?
- yield
+ instance_eval &block
a4r_data.change_group
end
end
def a4r_disable_advices_temporarily *methods
\ No newline at end of file