# File lib/declarative_authorization/reader.rb, line 424
      def if_permitted_to (privilege, attr_or_hash = nil, options = {})
        raise DSLError, "if_permitted_to only in has_permission blocks" if @current_rule.nil?
        options[:context] ||= attr_or_hash.delete(:context) if attr_or_hash.is_a?(Hash)
        # only :context option in attr_or_hash:
        attr_or_hash = nil if attr_or_hash.is_a?(Hash) and attr_or_hash.empty?
        @current_rule.append_attribute AttributeWithPermission.new(privilege,
            attr_or_hash, options[:context])
      end