Sha256: 17f12c9adc9947185fa6d327818a61105d6e17bbcf30bc9eac118f88354fc4b0
Contents?: true
Size: 563 Bytes
Versions: 160
Compression:
Stored size: 563 Bytes
Contents
require "delegate" module Ddr module Auth # # A class which applies ability definitions to the delegated ability class # when `#call` is invoked. # # @abstract # class AbilityDefinitions < SimpleDelegator # Applies ability definitions to the ability and return it def self.call(ability) new(ability).call ability end # Applies abilities definitions with `can` and `cannot`. def call raise NotImplementedError, "Subclasses must implement `#call`." end end end end
Version data entries
160 entries across 160 versions & 2 rubygems