Class: Holidays::Definition::Repository::Regions

Inherits:
Object
  • Object
show all
Defined in:
lib/holidays/definition/repository/regions.rb

Instance Method Summary collapse

Constructor Details

#initializeRegions

Returns a new instance of Regions.



5
6
7
# File 'lib/holidays/definition/repository/regions.rb', line 5

def initialize
  @regions = []
end

Instance Method Details

#add(regions) ⇒ Object



13
14
15
16
17
18
19
20
21
22
# File 'lib/holidays/definition/repository/regions.rb', line 13

def add(regions)
  regions = [regions] unless regions.is_a?(Array)

  regions.each do |region|
    raise ArgumentError unless region.is_a?(Symbol)
  end

  @regions = @regions | regions
  @regions.uniq!
end

#allObject



9
10
11
# File 'lib/holidays/definition/repository/regions.rb', line 9

def all
  @regions
end

#exists?(region) ⇒ Boolean

Returns:

  • (Boolean)

Raises:

  • (ArgumentError)


24
25
26
27
# File 'lib/holidays/definition/repository/regions.rb', line 24

def exists?(region)
  raise ArgumentError unless region.is_a?(Symbol)
  @regions.include?(region)
end

#search(prefix) ⇒ Object

Raises:

  • (ArgumentError)


29
30
31
32
# File 'lib/holidays/definition/repository/regions.rb', line 29

def search(prefix)
  raise ArgumentError unless prefix.is_a?(String)
  @regions.select { |region| region.to_s =~ Regexp.new("^#{prefix}") }
end