class Fib::Element
Constants
- TYPE
Attributes
condition[R]
core[R]
permission_key[R]
type[R]
Public Class Methods
create_action(controller, action, &block)
click to toggle source
# File lib/fib/element.rb, line 28 def create_action controller, action, &block new "action", {controller: controller.to_s, action: action.to_s}, block end
create_key(key, &block)
click to toggle source
# File lib/fib/element.rb, line 24 def create_key key, &block new "key", key, block end
create_url(url, &block)
click to toggle source
# File lib/fib/element.rb, line 32 def create_url url, &block new "url", url, block end
new(type, core, condition=->(*args){)
click to toggle source
# File lib/fib/element.rb, line 6 def initialize type, core, condition=->(*args){} raise UnValidElementType, "current type -> #{type}, type need in (#{TYPE.join(", ")})!" unless TYPE.include? type @type = type @core = core raise ParameterIsNotValid, "Condition must belong to Proc!" unless condition.nil? || condition.is_a?(Proc) @condition = condition || ->(*args){} end
Public Instance Methods
pass_condition?(*args)
click to toggle source
# File lib/fib/element.rb, line 18 def pass_condition? *args return true if condition.nil? condition[*args] != false end
set_permission(permission)
click to toggle source
# File lib/fib/element.rb, line 14 def set_permission permission @permission_key = permission.is_a?(Fib::Permission) ? permission.key : permission end