def value_from_cache(permission, *args)
      # object; Event, Discount, etc
      o = args[0]
      role = get_role_of(o)

      # don't perform the permission evaluation, if we have already computed it
      cache.get_for_role(permission, role)
    end
def value_from_cache(permission, *args)
      # object; Event, Discount, etc
      o = args[0]
      role = get_role_of(o)

      # don't perform the permission evaluation, if we have already computed it
      cache.get_for_role(permission, role)
    end
checks the cache if we have calculated this permission before
 @return [Boolean|NilClass]