class Zakuro::Japan::Validator::Gengou

Gengou 元号情報

Attributes

index[R]

@return [Integer] 要素位置

name[R]

@return [String] 元号名

new_year_date[R]

@return [String] 元旦

start_date[R]

@return [String] 開始日

start_year[R]

@return [String] 開始年

Public Class Methods

new(hash:, index:) click to toggle source

初期化

@param [Hash<String, Strin>] hash 元号情報 @param [Integer] index (元号セット内での)元号の要素位置

# File lib/zakuro/era/japan/gengou/validator.rb, line 149
def initialize(hash:, index:)
  @index = index
  @name = hash['name']
  @start_date = hash['start_date']
  @new_year_date = hash['new_year_date']
  @start_year = hash['start_year']
end

Public Instance Methods

name?() click to toggle source

元号名を検証する

@return [True] 正しい @return [False] 正しくない

# File lib/zakuro/era/japan/gengou/validator.rb, line 185
def name?
  return false unless @name

  @name.is_a?(String)
end
new_year_date?() click to toggle source

元旦文字列を検証する

@return [True] 正しい @return [False] 正しくない

# File lib/zakuro/era/japan/gengou/validator.rb, line 207
def new_year_date?
  Western::Calendar.valid_date_string(str: @new_year_date)
end
start_date?() click to toggle source

開始日文字列を検証する

@return [True] 正しい @return [False] 正しくない

# File lib/zakuro/era/japan/gengou/validator.rb, line 197
def start_date?
  Western::Calendar.valid_date_string(str: @start_date)
end
validate() click to toggle source

検証する

@return [Array<String>] 不正メッセージ

# File lib/zakuro/era/japan/gengou/validator.rb, line 164
def validate
  prefix = "list[#{index}]. "
  failed = []

  failed.push(prefix + "invalid name. #{@name}") unless name?

  failed.push(prefix + "invalid start_date. #{@start_date}") unless start_date?

  failed.push(prefix + "invalid start_year. #{@start_year}") unless year?

  failed.push(prefix + "invalid new_year_date. #{@new_year_date}") unless new_year_date?

  failed
end
year?() click to toggle source

元号年を検証する

@return [True] 正しい @return [False] 正しくない

# File lib/zakuro/era/japan/gengou/validator.rb, line 217
def year?
  return true unless @start_year

  @start_year.is_a?(Integer)
end