zakuro 0.9.1 → 0.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +20 -18
- data/VERSION +1 -1
- data/doc/condition.md +3 -1
- data/doc/dropped_date.md +25 -0
- data/doc/expection.md +11 -0
- data/doc/operation/csv/month.csv +5 -5
- data/doc/operation/operation.xlsx +0 -0
- data/doc/vanished_date.md +26 -0
- data/lib/zakuro/calculation/cycle/abstract_remainder.rb +26 -0
- data/lib/zakuro/calculation/cycle/abstract_solar_term.rb +1 -1
- data/lib/zakuro/calculation/era/gengou/abstract_scroll.rb +2 -2
- data/lib/zakuro/calculation/era/gengou/dated_scroll.rb +6 -2
- data/lib/zakuro/calculation/era/gengou/internal/counter.rb +5 -5
- data/lib/zakuro/calculation/era/gengou/internal/reserve/abstract_list.rb +12 -5
- data/lib/zakuro/calculation/era/gengou/internal/reserve/abstract_range.rb +14 -8
- data/lib/zakuro/calculation/era/gengou/internal/reserve/dated_list.rb +3 -2
- data/lib/zakuro/calculation/era/gengou/internal/reserve/dated_range.rb +4 -2
- data/lib/zakuro/calculation/era/gengou/internal/reserve/named_list.rb +5 -3
- data/lib/zakuro/calculation/era/gengou/internal/reserve/named_range.rb +10 -5
- data/lib/zakuro/calculation/era/gengou/named_scroll.rb +5 -2
- data/lib/zakuro/calculation/monthly/initialized_month.rb +4 -2
- data/lib/zakuro/calculation/monthly/meta/all_solar_term.rb +64 -0
- data/lib/zakuro/calculation/monthly/meta/meta_collector.rb +80 -0
- data/lib/zakuro/calculation/monthly/meta.rb +60 -0
- data/lib/zakuro/calculation/monthly/month.rb +60 -5
- data/lib/zakuro/calculation/monthly/operated_month.rb +6 -3
- data/lib/zakuro/calculation/option/dropped_date/location.rb +12 -23
- data/lib/zakuro/calculation/option/vanished_date/location.rb +9 -2
- data/lib/zakuro/calculation/range/abstract_full_range.rb +19 -2
- data/lib/zakuro/calculation/range/abstract_operation_range.rb +20 -2
- data/lib/zakuro/calculation/range/dated_full_range.rb +3 -1
- data/lib/zakuro/calculation/range/dated_operation_range.rb +3 -1
- data/lib/zakuro/calculation/range/medieval_annual_range.rb +1 -1
- data/lib/zakuro/calculation/range/named_full_range.rb +3 -1
- data/lib/zakuro/calculation/range/named_operation_range.rb +3 -1
- data/lib/zakuro/calculation/range/transfer/gengou_scroller.rb +2 -1
- data/lib/zakuro/calculation/range/transfer/year_boundary.rb +10 -8
- data/lib/zakuro/calculation/stella/solar/abstract_average.rb +8 -34
- data/lib/zakuro/calculation/summary/internal/option.rb +51 -25
- data/lib/zakuro/calculation/summary/western/specifier/single_day.rb +1 -1
- data/lib/zakuro/era/japan/calendar.rb +2 -2
- data/lib/zakuro/era/japan/gengou/alignment/linear_gengou.rb +1 -1
- data/lib/zakuro/era/japan/gengou/alignment.rb +14 -2
- data/lib/zakuro/era/japan/gengou/resource/parser.rb +83 -25
- data/lib/zakuro/era/japan/gengou/resource/type.rb +81 -26
- data/lib/zakuro/era/japan/gengou/resource/validator.rb +102 -23
- data/lib/zakuro/era/japan/gengou/resource/yaml/set-001-until-south.yaml +1123 -375
- data/lib/zakuro/era/japan/gengou/resource/yaml/set-002-from-north.yaml +487 -163
- data/lib/zakuro/era/japan/gengou/resource/yaml/set-003-modern.yaml +30 -10
- data/lib/zakuro/era/japan/gengou/resource.rb +16 -0
- data/lib/zakuro/era/japan/gengou.rb +7 -4
- data/lib/zakuro/era/western/calendar.rb +5 -11
- data/lib/zakuro/era/western/date_text.rb +40 -0
- data/lib/zakuro/gateway/locale/date.rb +2 -2
- data/lib/zakuro/operation/month/validator.rb +7 -1
- data/lib/zakuro/operation/yaml/month.yaml +15 -15
- data/lib/zakuro/output/logger.rb +21 -3
- data/lib/zakuro/tools/remainder_comparer.rb +97 -0
- metadata +7 -2
@@ -5,16 +5,24 @@ last_year:
|
|
5
5
|
japan: 7981
|
6
6
|
western: 9999
|
7
7
|
last_date:
|
8
|
-
|
9
|
-
|
8
|
+
calculation:
|
9
|
+
japan: ''
|
10
|
+
western: ''
|
11
|
+
operation:
|
12
|
+
japan: 令和7981年12月31日
|
13
|
+
western: '9999-12-31'
|
10
14
|
list:
|
11
15
|
- name: 明治
|
12
16
|
start_year:
|
13
17
|
japan: 1
|
14
18
|
western: 1868
|
15
19
|
start_date:
|
16
|
-
|
17
|
-
|
20
|
+
calculation:
|
21
|
+
japan: ''
|
22
|
+
western: ''
|
23
|
+
operation:
|
24
|
+
japan: 明治01年09月08日
|
25
|
+
western: '1868-10-23'
|
18
26
|
disuse:
|
19
27
|
new_year_date: '1868-1-25'
|
20
28
|
note: ''
|
@@ -23,8 +31,12 @@ list:
|
|
23
31
|
japan: 1
|
24
32
|
western: 1912
|
25
33
|
start_date:
|
26
|
-
|
27
|
-
|
34
|
+
calculation:
|
35
|
+
japan: ''
|
36
|
+
western: ''
|
37
|
+
operation:
|
38
|
+
japan: 大正01年07月30日
|
39
|
+
western: '1912-7-30'
|
28
40
|
disuse:
|
29
41
|
new_year_date: '1912-1-1'
|
30
42
|
note: ''
|
@@ -33,8 +45,12 @@ list:
|
|
33
45
|
japan: 1
|
34
46
|
western: 1926
|
35
47
|
start_date:
|
36
|
-
|
37
|
-
|
48
|
+
calculation:
|
49
|
+
japan: ''
|
50
|
+
western: ''
|
51
|
+
operation:
|
52
|
+
japan: 昭和01年12月25日
|
53
|
+
western: '1926-12-25'
|
38
54
|
disuse:
|
39
55
|
new_year_date: '1926-1-1'
|
40
56
|
note: ''
|
@@ -43,8 +59,12 @@ list:
|
|
43
59
|
japan: 1
|
44
60
|
western: 2019
|
45
61
|
start_date:
|
46
|
-
|
47
|
-
|
62
|
+
calculation:
|
63
|
+
japan: ''
|
64
|
+
western: ''
|
65
|
+
operation:
|
66
|
+
japan: 令和01年05月01日
|
67
|
+
western: '2019-5-1'
|
48
68
|
disuse:
|
49
69
|
new_year_date: '2019-1-1'
|
50
70
|
note: ''
|
@@ -27,6 +27,22 @@ module Zakuro
|
|
27
27
|
__dir__
|
28
28
|
))
|
29
29
|
].freeze
|
30
|
+
|
31
|
+
# @return [Array<Set>] 元号セット情報リスト(運用値)
|
32
|
+
OPERATED_LIST = [
|
33
|
+
Parser.run(filepath: File.expand_path(
|
34
|
+
'./resource/yaml/set-001-until-south.yaml',
|
35
|
+
__dir__
|
36
|
+
), operated: true),
|
37
|
+
Parser.run(filepath: File.expand_path(
|
38
|
+
'./resource/yaml/set-002-from-north.yaml',
|
39
|
+
__dir__
|
40
|
+
), operated: true),
|
41
|
+
Parser.run(filepath: File.expand_path(
|
42
|
+
'./resource/yaml/set-003-modern.yaml',
|
43
|
+
__dir__
|
44
|
+
), operated: true)
|
45
|
+
].freeze
|
30
46
|
end
|
31
47
|
end
|
32
48
|
end
|
@@ -26,13 +26,15 @@ module Zakuro
|
|
26
26
|
# @param [Integer] line 行番号
|
27
27
|
# @param [Western::Calendar] start_date 開始日
|
28
28
|
# @param [Western::Calendar] last_date 終了日
|
29
|
+
# @param [True, False] operated 運用値設定
|
29
30
|
#
|
30
31
|
# @return [Array<LinearGengou>] 該当行の元号
|
31
32
|
#
|
32
33
|
def line(line: FIRST_LINE,
|
33
|
-
start_date: Western::Calendar.new, last_date: Western::Calendar.new
|
34
|
+
start_date: Western::Calendar.new, last_date: Western::Calendar.new,
|
35
|
+
operated: false)
|
34
36
|
Alignment.get(
|
35
|
-
line: line, start_date: start_date, last_date: last_date
|
37
|
+
line: line, start_date: start_date, last_date: last_date, operated: operated
|
36
38
|
)
|
37
39
|
end
|
38
40
|
|
@@ -42,11 +44,12 @@ module Zakuro
|
|
42
44
|
# @param [Integer] line 行番号
|
43
45
|
# @param [Western::Calendar] start_date 開始日
|
44
46
|
# @param [Western::Calendar] last_date 終了日
|
47
|
+
# @param [True, False] operated 運用値設定
|
45
48
|
#
|
46
49
|
# @return [Array<LinearGengou>] 該当行の元号
|
47
50
|
#
|
48
|
-
def line_by_name(line: FIRST_LINE, name:)
|
49
|
-
Alignment.get_by_name(line: line, name: name)
|
51
|
+
def line_by_name(line: FIRST_LINE, name:, operated: false)
|
52
|
+
Alignment.get_by_name(line: line, name: name, operated: operated)
|
50
53
|
end
|
51
54
|
end
|
52
55
|
end
|
@@ -1,5 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require_relative './date_text'
|
4
|
+
|
3
5
|
require 'date'
|
4
6
|
|
5
7
|
# :nodoc:
|
@@ -402,9 +404,7 @@ module Zakuro
|
|
402
404
|
# @raise [ArgumentError] 引数エラー
|
403
405
|
#
|
404
406
|
def parse(text: '', type: Type::DEFAULT)
|
405
|
-
unless
|
406
|
-
raise ArgumentError, "invalid date string: #{text}"
|
407
|
-
end
|
407
|
+
raise ArgumentError, "invalid date string: #{text}" unless valid_date_text(text: text)
|
408
408
|
|
409
409
|
start = DATE_START.fetch(type, DATE_START[Type::DEFAULT])
|
410
410
|
date = Date.parse(text, start)
|
@@ -423,14 +423,8 @@ module Zakuro
|
|
423
423
|
# @return [True] 正しい
|
424
424
|
# @return [True] 正しくない
|
425
425
|
#
|
426
|
-
def
|
427
|
-
|
428
|
-
begin
|
429
|
-
Date.parse(text, start)
|
430
|
-
rescue ArgumentError => _e
|
431
|
-
return false
|
432
|
-
end
|
433
|
-
true
|
426
|
+
def valid_date_text(text: '')
|
427
|
+
DateText.validate(text: text)
|
434
428
|
end
|
435
429
|
end
|
436
430
|
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# :nodoc:
|
4
|
+
module Zakuro
|
5
|
+
#
|
6
|
+
# Western 西暦
|
7
|
+
#
|
8
|
+
module Western
|
9
|
+
#
|
10
|
+
# DateText 日付文字列
|
11
|
+
#
|
12
|
+
module DateText
|
13
|
+
# @return [Regexp] ハイフン区切り
|
14
|
+
HYPHEN = /^[0-9]{1,5}-[0-9]{1,2}-[0-9]{1,2}$/.freeze
|
15
|
+
# @return [Regexp] スラッシュ区切り
|
16
|
+
SLASH = %r{^[0-9]{1,5}/[0-9]{1,2}/[0-9]{1,2}$}.freeze
|
17
|
+
|
18
|
+
#
|
19
|
+
# 有効な日付文字列か検証する
|
20
|
+
#
|
21
|
+
# * 従来は Date.parse で日付文字列を検証していた
|
22
|
+
# * [貞観4年3月20日] のような文字列でも有効扱いになっていた
|
23
|
+
# * [20] [20日] のように2桁の数字が含まれると有効な日付扱いされる
|
24
|
+
# * 特定のフォーマットのみ受け付けるように改変した
|
25
|
+
#
|
26
|
+
# @param [String] text 文字列
|
27
|
+
#
|
28
|
+
# @return [True] 有効
|
29
|
+
# @return [True] 無効
|
30
|
+
#
|
31
|
+
def self.validate(text: '')
|
32
|
+
return true if HYPHEN.match(text)
|
33
|
+
|
34
|
+
return true if SLASH.match(text)
|
35
|
+
|
36
|
+
false
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -112,12 +112,12 @@ module Zakuro
|
|
112
112
|
# @param [String] text 日付文字列
|
113
113
|
#
|
114
114
|
def parse_text(text:)
|
115
|
-
if Western::Calendar.
|
115
|
+
if Western::Calendar.valid_date_text(text: text)
|
116
116
|
@western_date = Western::Calendar.parse(text: text)
|
117
117
|
return
|
118
118
|
end
|
119
119
|
|
120
|
-
return unless Japan::Calendar.
|
120
|
+
return unless Japan::Calendar.valid_date_text(text: text)
|
121
121
|
|
122
122
|
@japan_date = Japan::Calendar.parse(text: text)
|
123
123
|
end
|
@@ -136,7 +136,13 @@ module Zakuro
|
|
136
136
|
def western_date?(str: '')
|
137
137
|
return Western::Calendar.new if str == EMPTY_STRING
|
138
138
|
|
139
|
-
|
139
|
+
# 1316-11-16/1317-4-13
|
140
|
+
dates = str.split('/')
|
141
|
+
dates.each do |date|
|
142
|
+
return true if Western::Calendar.valid_date_text(text: date)
|
143
|
+
end
|
144
|
+
|
145
|
+
false
|
140
146
|
end
|
141
147
|
end
|
142
148
|
end
|
@@ -3091,7 +3091,7 @@
|
|
3091
3091
|
dest: "-"
|
3092
3092
|
days:
|
3093
3093
|
src: 大
|
3094
|
-
dest:
|
3094
|
+
dest: 大
|
3095
3095
|
solar_term:
|
3096
3096
|
src:
|
3097
3097
|
index: "-"
|
@@ -11697,11 +11697,11 @@
|
|
11697
11697
|
diffs:
|
11698
11698
|
month:
|
11699
11699
|
number:
|
11700
|
-
src:
|
11701
|
-
dest:
|
11700
|
+
src: '8'
|
11701
|
+
dest: '7'
|
11702
11702
|
leaped:
|
11703
|
-
src:
|
11704
|
-
dest:
|
11703
|
+
src: 'false'
|
11704
|
+
dest: 'true'
|
11705
11705
|
days:
|
11706
11706
|
src: 大
|
11707
11707
|
dest: 小
|
@@ -11730,11 +11730,11 @@
|
|
11730
11730
|
diffs:
|
11731
11731
|
month:
|
11732
11732
|
number:
|
11733
|
-
src:
|
11734
|
-
dest:
|
11733
|
+
src: '8'
|
11734
|
+
dest: '8'
|
11735
11735
|
leaped:
|
11736
|
-
src:
|
11737
|
-
dest:
|
11736
|
+
src: 'true'
|
11737
|
+
dest: 'false'
|
11738
11738
|
days:
|
11739
11739
|
src: 大
|
11740
11740
|
dest: 大
|
@@ -15070,10 +15070,10 @@
|
|
15070
15070
|
diffs:
|
15071
15071
|
month:
|
15072
15072
|
number:
|
15073
|
-
src: '
|
15073
|
+
src: '12'
|
15074
15074
|
dest: '11'
|
15075
15075
|
leaped:
|
15076
|
-
src: '
|
15076
|
+
src: 'false'
|
15077
15077
|
dest: 'false'
|
15078
15078
|
days:
|
15079
15079
|
src: 大
|
@@ -15102,11 +15102,11 @@
|
|
15102
15102
|
diffs:
|
15103
15103
|
month:
|
15104
15104
|
number:
|
15105
|
-
src:
|
15106
|
-
dest:
|
15105
|
+
src: '12'
|
15106
|
+
dest: '12'
|
15107
15107
|
leaped:
|
15108
|
-
src:
|
15109
|
-
dest:
|
15108
|
+
src: 'true'
|
15109
|
+
dest: 'false'
|
15110
15110
|
days:
|
15111
15111
|
src: 大
|
15112
15112
|
dest: 大
|
data/lib/zakuro/output/logger.rb
CHANGED
@@ -9,6 +9,7 @@ module Zakuro
|
|
9
9
|
# @note 本番では使用しない
|
10
10
|
#
|
11
11
|
class Logger
|
12
|
+
# @return [Hash<Symbol, Integer>] ログレベル
|
12
13
|
LEVELS = {
|
13
14
|
none: -1,
|
14
15
|
debug: 0,
|
@@ -17,6 +18,7 @@ module Zakuro
|
|
17
18
|
error: 3
|
18
19
|
}.freeze
|
19
20
|
|
21
|
+
# @return [Integer] 現在ログレベル
|
20
22
|
LEVEL = LEVELS[:none]
|
21
23
|
|
22
24
|
# @return [String] 呼び出し位置
|
@@ -32,7 +34,9 @@ module Zakuro
|
|
32
34
|
# @param [String] messages メッセージ
|
33
35
|
#
|
34
36
|
def debug(*messages)
|
35
|
-
return if
|
37
|
+
return if none?
|
38
|
+
|
39
|
+
return if LEVEL >= LEVELS[:debug]
|
36
40
|
|
37
41
|
output('DEBUG', *messages)
|
38
42
|
end
|
@@ -43,7 +47,9 @@ module Zakuro
|
|
43
47
|
# @param [String] messages メッセージ
|
44
48
|
#
|
45
49
|
def info(*messages)
|
46
|
-
return if
|
50
|
+
return if none?
|
51
|
+
|
52
|
+
return if LEVEL >= LEVELS[:info]
|
47
53
|
|
48
54
|
output('INFO', *messages)
|
49
55
|
end
|
@@ -55,7 +61,9 @@ module Zakuro
|
|
55
61
|
# @param [String] messages メッセージ
|
56
62
|
#
|
57
63
|
def error(error, *messages)
|
58
|
-
return if
|
64
|
+
return if none?
|
65
|
+
|
66
|
+
return if LEVEL >= LEVELS[:error]
|
59
67
|
|
60
68
|
output('ERROR', *messages)
|
61
69
|
output('ERROR', error.message)
|
@@ -64,6 +72,16 @@ module Zakuro
|
|
64
72
|
|
65
73
|
private
|
66
74
|
|
75
|
+
#
|
76
|
+
# 出力なしか
|
77
|
+
#
|
78
|
+
# @return [True] 出力なし
|
79
|
+
# @return [False] 出力あり
|
80
|
+
#
|
81
|
+
def none?
|
82
|
+
LEVEL < LEVELS[:debug]
|
83
|
+
end
|
84
|
+
|
67
85
|
#
|
68
86
|
# 標準出力を行う
|
69
87
|
#
|
@@ -0,0 +1,97 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative '../output/logger'
|
4
|
+
|
5
|
+
require_relative '../calculation/cycle/abstract_remainder'
|
6
|
+
|
7
|
+
# :nodoc:
|
8
|
+
module Zakuro
|
9
|
+
#
|
10
|
+
# Tools 汎用メソッド群
|
11
|
+
#
|
12
|
+
module Tools
|
13
|
+
#
|
14
|
+
# RemainderComparer 大余小余比較
|
15
|
+
#
|
16
|
+
module RemainderComparer
|
17
|
+
LOGGER = Output::Logger.new(location: 'RemainderComparer')
|
18
|
+
|
19
|
+
class << self
|
20
|
+
#
|
21
|
+
# 大余を基準に範囲チェックをする
|
22
|
+
#
|
23
|
+
# 次のパターンで用いる
|
24
|
+
# 1. 月内(当月朔日から当月末日(来月朔日の前日)の間)に二十四節気があるか
|
25
|
+
# * target: 二十四節気
|
26
|
+
# * start: 当月朔日
|
27
|
+
# * last: 次月朔日
|
28
|
+
# 2. ある二十四節気に対象の日があるか
|
29
|
+
# * target: 対象の日
|
30
|
+
# * start: 二十四節気
|
31
|
+
# * last: 次の二十四節気
|
32
|
+
#
|
33
|
+
# @param [Calcuration::Cycle::AbstractRemainder] target 対象日
|
34
|
+
# @param [Calcuration::Cycle::AbstractRemainder] start 範囲開始
|
35
|
+
# @param [Calcuration::Cycle::AbstractRemainder] last 範囲終了
|
36
|
+
#
|
37
|
+
# @return [True] 対象日がある
|
38
|
+
# @return [False] 対象日がない
|
39
|
+
#
|
40
|
+
def in_range?(target:, start:, last:)
|
41
|
+
# 『日本暦日便覧』では下記5日を没日ありとしている
|
42
|
+
# これは二十四節気の小余と秒が0の場合に限って、範囲を翌日にずらすことを指している
|
43
|
+
#
|
44
|
+
# * 貞観12年7月18日
|
45
|
+
# * 天喜5年3月11日
|
46
|
+
# * 寛元1年11月4日
|
47
|
+
# * 永享2年7月26日
|
48
|
+
# * 元和3年3月19日
|
49
|
+
#
|
50
|
+
last_day = last.only_day? ? last.day + 1 : last.day
|
51
|
+
in_range_day?(target: target.day, start: start.day, last: last_day)
|
52
|
+
end
|
53
|
+
|
54
|
+
#
|
55
|
+
# 大余を基準に範囲チェックをする
|
56
|
+
#
|
57
|
+
# @param [Calcuration::Cycle::AbstractRemainder] target 対象日
|
58
|
+
# @param [Calcuration::Cycle::AbstractRemainder] start 範囲開始
|
59
|
+
# @param [Integer] limit 大余上限
|
60
|
+
#
|
61
|
+
# @return [True] 対象日がある
|
62
|
+
# @return [False] 対象日がない
|
63
|
+
#
|
64
|
+
def in_limit?(target:, start:, limit:)
|
65
|
+
last_day = start.add_day(limit).day
|
66
|
+
|
67
|
+
in_range_day?(target: target.day, start: start.day, last: last_day)
|
68
|
+
end
|
69
|
+
|
70
|
+
private
|
71
|
+
|
72
|
+
#
|
73
|
+
# 大余を基準に範囲チェックをする
|
74
|
+
#
|
75
|
+
# @note 大余60で一巡するため 以下2パターンがある
|
76
|
+
# * start <= last : (二十四節気) >= start && (二十四節気) < last
|
77
|
+
# * start > last : (二十四節気) >= start || (二十四節気) < last
|
78
|
+
#
|
79
|
+
# @param [Integer] target 対象日
|
80
|
+
# @param [Integer] start 範囲開始
|
81
|
+
# @param [Integer] last 範囲終了
|
82
|
+
#
|
83
|
+
# @return [True] 対象日がある
|
84
|
+
# @return [False] 対象日がない
|
85
|
+
#
|
86
|
+
def in_range_day?(target:, start:, last:)
|
87
|
+
start_over = (target >= start)
|
88
|
+
last_under = (target < last)
|
89
|
+
|
90
|
+
return start_over && last_under if start <= last
|
91
|
+
|
92
|
+
start_over || last_under
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zakuro
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- pldb
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-03-25 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: mainly lunar solar calendar
|
14
14
|
email:
|
@@ -86,6 +86,9 @@ files:
|
|
86
86
|
- lib/zakuro/calculation/monthly/const.rb
|
87
87
|
- lib/zakuro/calculation/monthly/first_day.rb
|
88
88
|
- lib/zakuro/calculation/monthly/initialized_month.rb
|
89
|
+
- lib/zakuro/calculation/monthly/meta.rb
|
90
|
+
- lib/zakuro/calculation/monthly/meta/all_solar_term.rb
|
91
|
+
- lib/zakuro/calculation/monthly/meta/meta_collector.rb
|
89
92
|
- lib/zakuro/calculation/monthly/month.rb
|
90
93
|
- lib/zakuro/calculation/monthly/month_label.rb
|
91
94
|
- lib/zakuro/calculation/monthly/operated_month.rb
|
@@ -143,6 +146,7 @@ files:
|
|
143
146
|
- lib/zakuro/era/japan/gengou/resource/yaml/set-003-modern.yaml
|
144
147
|
- lib/zakuro/era/japan/version.rb
|
145
148
|
- lib/zakuro/era/western/calendar.rb
|
149
|
+
- lib/zakuro/era/western/date_text.rb
|
146
150
|
- lib/zakuro/exception/case/pattern.rb
|
147
151
|
- lib/zakuro/exception/case/preset.rb
|
148
152
|
- lib/zakuro/exception/case/template.rb
|
@@ -180,6 +184,7 @@ files:
|
|
180
184
|
- lib/zakuro/result/operation/month/annotation.rb
|
181
185
|
- lib/zakuro/result/operation/month/history.rb
|
182
186
|
- lib/zakuro/result/result.rb
|
187
|
+
- lib/zakuro/tools/remainder_comparer.rb
|
183
188
|
- lib/zakuro/tools/stringifier.rb
|
184
189
|
- lib/zakuro/tools/typeconv.rb
|
185
190
|
- lib/zakuro/tools/typeof.rb
|