module ReeActions::DSL::ClassMethods

def action(name, &proc)

def action(name, &proc)
  dsl = Ree::ObjectDsl.new(
    Ree.container.packages_facade, name, self, :fn
  )
  dsl.instance_exec(&proc) if block_given?
  dsl.tags(["action"])
  dsl.freeze(false)
  dsl.object.set_as_compiled(false)
  Ree.container.compile(dsl.package, name)
end