class Zakuro::VersionFactory
VersionFactory
暦生成
Public Class Methods
get_runnable_constant(date:)
click to toggle source
実行可能な暦を取得する
@param [Date] date 西暦日
@return [AbstractVersion] 暦クラス
# File lib/zakuro/version_factory.rb, line 31 def self.get_runnable_constant(date:) class_name = Japan::Reki.class_name( date: Western::Calendar.create(date: date) ) constant = Object.const_get(class_name) raise ArgumentError, 'unreleased version' unless constant::RELEASE constant rescue StandardError => e raise e end
to_japan_date(western_date:)
click to toggle source
西暦日から和暦日に変換する
@param [Date] western_date 西暦日
@return [Result::Single] 和暦日
# File lib/zakuro/version_factory.rb, line 52 def self.to_japan_date(western_date:) runnable = VersionFactory.get_runnable_constant(date: western_date) runnable.to_japan_date(western_date: western_date) rescue StandardError => e raise Output::ZakuroError, e.message end