<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,5 +1,18 @@
 module Mack # :nodoc:
   module Utils # :nodoc:
+    # Include this module into any class, or module, and it's methods can become hookable.
+    # This allows for the ability to do really nice AOP programming.
+    # 
+    # Example:
+    #   class User
+    #     def say_full_name
+    #       puts &quot;mark&quot;
+    #     end
+    #   end
+    #   User.before(:say_full_name) do
+    #     puts &quot;hello&quot;
+    #   end
+    #   User.new.say_full_name # =&gt; &quot;hello&quot; &quot;mark&quot;
     module Hookable
       
       def self.included(klass)
@@ -20,21 +33,25 @@ module Mack # :nodoc:
         klass.extend self
       end
 
+      # Used to prefix an instance method with the assigned block
       def before(name, &amp;block)
         hookable_class.hooks_for(:before, name.to_sym) &lt;&lt; block
         build_hook_instance_method(name)
       end
       
+      # Used to suffix an instance method with the assigned block
       def after(name, &amp;block)
         hookable_class.hooks_for(:after, name.to_sym) &lt;&lt; block
         build_hook_instance_method(name)
       end
       
+      # Used to prefix a class method with the assigned block
       def before_class_method(name, &amp;block)
         hookable_class.hooks_for(:before_class_method, name.to_sym) &lt;&lt; block
         build_hook_class_method(name)
       end
       
+      # Used to suffix a class method with the assigned block
       def after_class_method(name, &amp;block)
         hookable_class.hooks_for(:after_class_method, name.to_sym) &lt;&lt; block
         build_hook_class_method(name)</diff>
      <filename>mack-facets/lib/utils/hookable.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>009c91b5e8033ae22e9227545effe5411b60148b</id>
    </parent>
  </parents>
  <author>
    <name>Mark Bates</name>
    <email>mark@mackframework.com</email>
  </author>
  <url>http://github.com/markbates/mack-more/commit/cf269199f654b3c95adc7c4c1d9799717dbb59da</url>
  <id>cf269199f654b3c95adc7c4c1d9799717dbb59da</id>
  <committed-date>2008-07-16T13:02:47-07:00</committed-date>
  <authored-date>2008-07-16T13:02:47-07:00</authored-date>
  <message>Added rdoc to Mack::Utils::Hookable [#7 state:resolved]</message>
  <tree>24be20650c8b069d7702323be924564ed74b2fc9</tree>
  <committer>
    <name>Mark Bates</name>
    <email>mark@mackframework.com</email>
  </committer>
</commit>
