Module: Aska::ClassMethods
- Defined in:
- lib/aska.rb
Instance Method Summary collapse
- #attr_accessors ⇒ Object
- #create_instance_variable(name) ⇒ Object
- #defined_rules ⇒ Object
- #look_up_rules(name) ⇒ Object
- #rules(name = :rules, str = "") ⇒ Object
Instance Method Details
#attr_accessors ⇒ Object
26 27 28 |
# File 'lib/aska.rb', line 26 def attr_accessors @attr_accessors ||= [] end |
#create_instance_variable(name) ⇒ Object
18 19 20 21 22 |
# File 'lib/aska.rb', line 18 def create_instance_variable(name) return unless name attr_accessors << name.to_sym eval "attr_accessor :#{name}" end |
#defined_rules ⇒ Object
29 30 31 |
# File 'lib/aska.rb', line 29 def defined_rules @defined_rules ||= {} end |
#look_up_rules(name) ⇒ Object
23 24 25 |
# File 'lib/aska.rb', line 23 def look_up_rules(name) defined_rules["#{name}"] ||= [] end |
#rules(name = :rules, str = "") ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/aska.rb', line 7 def rules(name=:rules, str="") r = look_up_rules(name) str.each_line do |line| k = line[/(.+)[=\\\<\>](.*)/, 1].gsub(/\s+/, '') v = line[/(.+)[=\\<>](.*)/, 2].gsub(/\s+/, '') m = line[/[=\\<>]/, 0].gsub(/\s+/, '') create_instance_variable(k) r << {k => [m, v]} end end |