class Expire::RuleList

List rule classes, names and option-names

Public Class Methods

class_names() click to toggle source
# File lib/expire/rule_list.rb, line 8
def self.class_names
  instance.class_names
end
name_symbols() click to toggle source
# File lib/expire/rule_list.rb, line 16
def self.name_symbols
  instance.name_symbols
end
names() click to toggle source
# File lib/expire/rule_list.rb, line 12
def self.names
  instance.names
end
option_names() click to toggle source
# File lib/expire/rule_list.rb, line 20
def self.option_names
  instance.option_names
end

Public Instance Methods

class_names() click to toggle source
# File lib/expire/rule_list.rb, line 24
def class_names
  @class_names ||= rule_classes.map(&:to_s).freeze
end
name_symbols() click to toggle source
# File lib/expire/rule_list.rb, line 32
def name_symbols
  names.map(&:to_sym)
end
names() click to toggle source
# File lib/expire/rule_list.rb, line 28
def names
  rule_classes.map(&:name)
end
option_names() click to toggle source
# File lib/expire/rule_list.rb, line 36
def option_names
  rule_classes.map(&:option_name)
end

Private Instance Methods

rule_class_names() click to toggle source
# File lib/expire/rule_list.rb, line 46
def rule_class_names
  class_symbols = Expire.constants.select { |klass| Expire.const_get(klass).to_s =~ /Rule\z/ }

  class_symbols.map { |c_sym| "Expire::#{c_sym}" }
end
rule_classes() click to toggle source
# File lib/expire/rule_list.rb, line 42
def rule_classes
  @rule_classes ||= rule_class_names.map(&:constantize).sort.freeze
end