# File lib/cancan/ability.rb, line 201 def authorize!(action, subject, *args) message = nil if args.last.kind_of?(Hash) && args.last.has_key?(:message) message = args.pop[:message] end if cannot?(action, subject, *args) message ||= unauthorized_message(action, subject) raise AccessDenied.new(message, action, subject) end subject end