class Holidays::Definition::Validator::Region
Attributes
regions_repo[R]
Public Class Methods
new(regions_repo)
click to toggle source
# File lib/holidays/definition/validator/region.rb, line 5 def initialize(regions_repo) @regions_repo = regions_repo end
Public Instance Methods
valid?(r)
click to toggle source
# File lib/holidays/definition/validator/region.rb, line 9 def valid?(r) return false unless r.is_a?(Symbol) region = find_wildcard_base(r) (region == :any || regions_repo.exists?(region) || region_in_static_definitions?(region)) end
Private Instance Methods
find_wildcard_base(region)
click to toggle source
Ex: :gb_ transformed to :gb
# File lib/holidays/definition/validator/region.rb, line 24 def find_wildcard_base(region) r = region.to_s if r =~ /_$/ base = r.split('_').first else base = r end base.to_sym end
region_in_static_definitions?(region)
click to toggle source
# File lib/holidays/definition/validator/region.rb, line 36 def region_in_static_definitions?(region) static_regions_definition = "#{DEFINITIONS_PATH}/REGIONS.rb" require static_regions_definition Holidays::REGIONS.include?(region) end