module Kan::Abilities
Constants
- DEFAULT_ABILITY_BLOCK
Attributes
logger[R]
Public Class Methods
included(base)
click to toggle source
# File lib/kan/abilities.rb, line 5 def self.included(base) base.extend(ClassMethods) end
new(options = {})
click to toggle source
# File lib/kan/abilities.rb, line 60 def initialize(options = {}) @options = options @logger = @options.fetch(:logger, Logger.new(STDOUT)) end
Public Instance Methods
ability(name)
click to toggle source
# File lib/kan/abilities.rb, line 65 def ability(name) rule = self.class.ability_list[name.to_sym] || @options[:default_ability_block] || DEFAULT_ABILITY_BLOCK ->(*args) { instance_exec(args, &rule) } end