module Fias::Name::Canonical

Constants

REPUBLIC

Public Class Methods

canonical(name) click to toggle source
# File lib/fias/name/canonical.rb, line 5
def canonical(name)
  result = search(name) || search_exception(name)
  result || fail("Unknown abbrevation: #{name}")
  fix_republic_case(result)
end

Private Class Methods

aliases_for(long) click to toggle source
# File lib/fias/name/canonical.rb, line 25
def aliases_for(long)
  Fias.config.aliases[Unicode.downcase(long)]
end
fix_republic_case(canonical) click to toggle source
# File lib/fias/name/canonical.rb, line 33
def fix_republic_case(canonical)
  return canonical unless canonical[0] == REPUBLIC
  canonical.map { |n| Unicode.upcase(n[0]) + n[1..-1] }
end
search_exception(name) click to toggle source
# File lib/fias/name/canonical.rb, line 29
def search_exception(name)
  Fias.config.exceptions[Unicode.downcase(name)]
end
short_for(long) click to toggle source
# File lib/fias/name/canonical.rb, line 21
def short_for(long)
  Fias.config.shorts[Unicode.downcase(long)]
end