Class: RbRules

Inherits:
Object
  • Object
show all
Defined in:
lib/rbrules.rb

Defined Under Namespace

Classes: Rule

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize {|_self| ... } ⇒ RbRules

Returns a new instance of RbRules.

Yields:

  • (_self)

Yield Parameters:

  • _self (RbRules)

    the object that the method was called on



11
12
13
14
# File 'lib/rbrules.rb', line 11

def initialize(&block)
  @rules = []
  yield(self) if block_given?
end

Instance Attribute Details

#rulesObject (readonly)

Returns the value of attribute rules.



3
4
5
# File 'lib/rbrules.rb', line 3

def rules
  @rules
end

Class Method Details

.[](key) ⇒ Object



7
8
9
# File 'lib/rbrules.rb', line 7

def self.[](key)
  @rule_sets[key]
end

Instance Method Details

#any?(*args) ⇒ Boolean

Returns:

  • (Boolean)


30
31
32
33
34
# File 'lib/rbrules.rb', line 30

def any?(*args)
  rules.find do |rule|
    rule.call(*args)
  end
end

#rule(name_or_rule, &block) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/rbrules.rb', line 16

def rule(name_or_rule, &block)
  if name_or_rule.respond_to? :call
    rules << name_or_rule
  else
    rules << Rule.new(name_or_rule, block)
  end
end