Class: Languages
- Inherits:
-
Object
- Object
- Languages
- Defined in:
- lib/Languages.rb
Constant Summary collapse
- @@all =
Array.new
Instance Attribute Summary collapse
-
#name ⇒ Object
Returns the value of attribute name.
-
#providers ⇒ Object
Returns the value of attribute providers.
Class Method Summary collapse
- .add_by_name(language_names, provider) ⇒ Object
- .all ⇒ Object
- .languages_by_provider(provider) ⇒ Object
Instance Method Summary collapse
-
#initialize(name) ⇒ Languages
constructor
A new instance of Languages.
Constructor Details
#initialize(name) ⇒ Languages
Returns a new instance of Languages.
12 13 14 15 16 |
# File 'lib/Languages.rb', line 12 def initialize(name) @name = name @providers = Array.new @@all << self end |
Instance Attribute Details
#name ⇒ Object
Returns the value of attribute name.
8 9 10 |
# File 'lib/Languages.rb', line 8 def name @name end |
#providers ⇒ Object
Returns the value of attribute providers.
8 9 10 |
# File 'lib/Languages.rb', line 8 def providers @providers end |
Class Method Details
.add_by_name(language_names, provider) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/Languages.rb', line 20 def self.add_by_name(language_names, provider) ary = language_names.split(",") language_instances_to_return = Array.new i = 0 while i < ary.size ary[i] = ary[i].strip i+=1 end ary.each do |language_name| our_language = @@all.select do |langu| langu.name == language_name end if our_language.length == 0 new_language = Languages.new(language_name) new_language.providers << provider language_instances_to_return << our_language else our_language[0].providers << provider language_instances_to_return << our_language end end language_instances_to_return end |
.all ⇒ Object
71 72 73 |
# File 'lib/Languages.rb', line 71 def self.all @@all end |
.languages_by_provider(provider) ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/Languages.rb', line 55 def self.languages_by_provider(provider) provider_languages = Array.new @@all.each do |language| language.providers.each do |prvdr| if prvdr == provider provider_languages << language.name end end end provider_languages.join(', ') end |