Class: Zakuro::Calculation::Gengou::Reserve::NamedRange
- Inherits:
-
AbstractRange
- Object
- AbstractRange
- Zakuro::Calculation::Gengou::Reserve::NamedRange
- Defined in:
- lib/zakuro/calculation/era/gengou/internal/reserve/named_range.rb
Overview
NamedRange 予約済み計算範囲(元号名)
Constant Summary collapse
Instance Attribute Summary
Attributes inherited from AbstractRange
Instance Method Summary collapse
-
#initialize(start_name: INVALID_NAME, last_name: INVALID_NAME, operated: false, restored: false) ⇒ NamedRange
constructor
初期化.
-
#newest_list ⇒ List
最新の元号を取得する.
-
#western_last_date ⇒ Western::Calendar
最新の元号から西暦終了日を取得する.
Methods inherited from AbstractRange
#collect_first, #collect_second, #invalid?, #japan_start_date, #renew, #western_last_year, #western_start_date, #western_start_year
Constructor Details
#initialize(start_name: INVALID_NAME, last_name: INVALID_NAME, operated: false, restored: false) ⇒ NamedRange
初期化
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/zakuro/calculation/era/gengou/internal/reserve/named_range.rb', line 29 def initialize(start_name: INVALID_NAME, last_name: INVALID_NAME, operated: false, restored: false) @first_list = NamedList.new( first: true, start_name: start_name, last_name: last_name, operated: operated, restored: restored ) @second_list = NamedList.new( first: false, start_name: start_name, last_name: last_name, operated: operated, restored: restored ) start_date = western_start_date last_date = western_last_date super( start_date: start_date, last_date: last_date, operated: operated, restored: restored ) end |
Instance Method Details
#newest_list ⇒ List
最新の元号を取得する
66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/zakuro/calculation/era/gengou/internal/reserve/named_range.rb', line 66 def newest_list return first_list if invalid_list? first_western_date = first_list.western_last_date second_western_date = second_list.western_last_date return second_list if first_western_date.invalid? return first_list if second_western_date.invalid? return first_list if first_western_date > second_western_date second_list end |
#western_last_date ⇒ Western::Calendar
最新の元号から西暦終了日を取得する
53 54 55 56 57 58 59 |
# File 'lib/zakuro/calculation/era/gengou/internal/reserve/named_range.rb', line 53 def western_last_date list = newest_list return Western::Calendar.new if list.invalid? list.western_last_date end |