Class: Hypercuke::NameList
- Inherits:
-
Object
- Object
- Hypercuke::NameList
- Defined in:
- lib/hypercuke/name_list.rb
Instance Method Summary collapse
- #define(new_name) ⇒ Object
- #empty? ⇒ Boolean
-
#initialize(*names) ⇒ NameList
constructor
A new instance of NameList.
- #to_a ⇒ Object
- #valid_name?(name) ⇒ Boolean
- #validate(name) ⇒ Object
Constructor Details
#initialize(*names) ⇒ NameList
Returns a new instance of NameList.
8 9 10 |
# File 'lib/hypercuke/name_list.rb', line 8 def initialize(*names) @names = names.flatten end |
Instance Method Details
#define(new_name) ⇒ Object
12 13 14 15 |
# File 'lib/hypercuke/name_list.rb', line 12 def define(new_name) name = new_name.to_sym names << name unless names.include?(name) end |
#empty? ⇒ Boolean
34 35 36 |
# File 'lib/hypercuke/name_list.rb', line 34 def empty? names.empty? end |
#to_a ⇒ Object
30 31 32 |
# File 'lib/hypercuke/name_list.rb', line 30 def to_a names.dup end |
#valid_name?(name) ⇒ Boolean
26 27 28 |
# File 'lib/hypercuke/name_list.rb', line 26 def valid_name?(name) names.include?(name.to_sym) end |
#validate(name) ⇒ Object
17 18 19 20 21 22 23 24 |
# File 'lib/hypercuke/name_list.rb', line 17 def validate(name) if valid_name?(name) return name.to_sym else yield if block_given? return nil end end |