lib/zakuro/calculation/range/transfer/year_boundary.rb in zakuro-0.1.3 vs lib/zakuro/calculation/range/transfer/year_boundary.rb in zakuro-0.1.4
- old
+ new
@@ -18,16 +18,17 @@
#
module YearBoundary
#
# 年間範囲内の年データの開始月を変更する
#
+ # @param [Context] context 暦コンテキスト
# @param [Array<Year>] annual_ranges 年データ(冬至基準)
#
# @return [Array<Year>] 年データ(元旦基準)
#
- def self.get(annual_ranges:)
- categorize(annual_ranges: annual_ranges)
+ def self.get(context:, annual_ranges:)
+ categorize(context: context, annual_ranges: annual_ranges)
rearranged_years(annual_ranges: annual_ranges)
end
#
# 年間範囲内の年データの開始月を変更する
@@ -49,29 +50,32 @@
private_class_method :rearranged_years
#
# 年間範囲を昨年/今年で分類する
#
+ # @param [Context] context 暦コンテキスト
# @param [Array<Year>] annual_range 1年データ
#
- def self.categorize(annual_ranges:)
+ def self.categorize(context:, annual_ranges:)
annual_ranges.each do |annual_range|
- categorize_year(annual_range: annual_range)
+ categorize_year(context: context, annual_range: annual_range)
end
end
private_class_method :categorize
#
# 各月を昨年/今年で分類する
#
+ # @param [Context] context 暦コンテキスト
# @param [Array<Month>] annual_range 1年データ
#
- def self.categorize_year(annual_range:)
+ def self.categorize_year(context:, annual_range:)
is_last_year = true
annual_range.each_with_index do |month, index|
is_last_year = false if month.number == 1
annual_range[index] = Monthly::InitializedMonth.new(
+ context: context,
month_label: month.month_label, first_day: month.first_day,
solar_terms: month.solar_terms, phase_index: month.phase_index,
is_last_year: is_last_year
)
end