Class: Zakuro::Context::Option
- Inherits:
-
Object
- Object
- Zakuro::Context::Option
- Defined in:
- lib/zakuro/context/option.rb
Overview
Option オプション値
Constant Summary collapse
- INVALID_VERSION_NAME =
Returns 無効暦名.
''- VERSION_NAMES =
Returns 暦名.
%w[Genka Gihou Daien Senmyou Joukyou Kansei Tenpou Gregorio].freeze
- DROPPED_DATE_KEY =
Returns 没日オプションキー名.
'dropped_date'- VANISHED_DATE_KEY =
Returns 滅日オプションキー名.
'vanished_date'
Instance Attribute Summary collapse
-
#default_version ⇒ String
readonly
デフォルト暦名.
-
#hash ⇒ Hash<String, Object>
readonly
オプション値.
Class Method Summary collapse
-
.version(version: INVALID_VERSION_NAME) ⇒ String
暦名を返す.
-
.version?(version: INVALID_VERSION_NAME) ⇒ True, False
有効な暦か.
Instance Method Summary collapse
-
#default_version? ⇒ True, False
有効なデフォルト暦名か.
-
#dropped_date? ⇒ True, False
没日か.
-
#initialize(default_version: INVALID_VERSION_NAME, hash: {}) ⇒ Option
constructor
初期化.
-
#vanished_date? ⇒ True, False
滅日か.
-
#version ⇒ String
暦名を返す.
-
#version? ⇒ True, False
有効な暦名か.
Constructor Details
#initialize(default_version: INVALID_VERSION_NAME, hash: {}) ⇒ Option
初期化
34 35 36 37 |
# File 'lib/zakuro/context/option.rb', line 34 def initialize(default_version: INVALID_VERSION_NAME, hash: {}) @default_version = default_version @hash = hash end |
Instance Attribute Details
#default_version ⇒ String (readonly)
Returns デフォルト暦名.
25 26 27 |
# File 'lib/zakuro/context/option.rb', line 25 def default_version @default_version end |
#hash ⇒ Hash<String, Object> (readonly)
Returns オプション値.
23 24 25 |
# File 'lib/zakuro/context/option.rb', line 23 def hash @hash end |
Class Method Details
.version(version: INVALID_VERSION_NAME) ⇒ String
暦名を返す
110 111 112 113 114 115 116 117 118 |
# File 'lib/zakuro/context/option.rb', line 110 def version(version: INVALID_VERSION_NAME) return INVALID_VERSION_NAME unless version return INVALID_VERSION_NAME if version.empty? return INVALID_VERSION_NAME unless VERSION_NAMES.include?(version) version end |
.version?(version: INVALID_VERSION_NAME) ⇒ True, False
有効な暦か
128 129 130 131 132 |
# File 'lib/zakuro/context/option.rb', line 128 def version?(version: INVALID_VERSION_NAME) return false if version == INVALID_VERSION_NAME true end |
Instance Method Details
#default_version? ⇒ True, False
有効なデフォルト暦名か
60 61 62 |
# File 'lib/zakuro/context/option.rb', line 60 def default_version? self.class.version?(version: @default_version) end |
#dropped_date? ⇒ True, False
没日か
80 81 82 83 84 85 86 |
# File 'lib/zakuro/context/option.rb', line 80 def dropped_date? value = @hash[DROPPED_DATE_KEY] return true if value.is_a?(TrueClass) false end |
#vanished_date? ⇒ True, False
滅日か
94 95 96 97 98 99 100 |
# File 'lib/zakuro/context/option.rb', line 94 def vanished_date? value = @hash[VANISHED_DATE_KEY] return true if value.is_a?(TrueClass) false end |
#version ⇒ String
暦名を返す
44 45 46 47 48 49 50 51 52 |
# File 'lib/zakuro/context/option.rb', line 44 def version version = self.class.version(version: @default_version) return version if self.class.version?(version: version) version = hash['version'] self.class.version(version: version) end |
#version? ⇒ True, False
有効な暦名か
70 71 72 |
# File 'lib/zakuro/context/option.rb', line 70 def version? self.class.version?(version: version) end |