class Zakuro::Merchant

Merchant ざくろ商人

東西の暦を取引する、素敵な笑顔の持ち主

Attributes

condition[R]

@return [Hash<Symbol, Object>] 条件

Public Class Methods

new(condition: {}) click to toggle source

初期化

@param [Hash<Symbol, Object>] condition 条件

# File lib/zakuro/merchant.rb, line 23
def initialize(condition: {})
  failed = Condition.validate(hash: condition)
  raise Output::ZakuroError, failed.join('\n') unless failed.empty?

  @condition = Condition.new(hash: condition)
end

Public Instance Methods

commit() click to toggle source

承諾する

@return [Result::SingleDay] 和暦日

# File lib/zakuro/merchant.rb, line 51
def commit
  date = condition.date
  return VersionFactory.to_japan_date(western_date: date) if date

  # TODO: does not have no patterns now
  {}
end
offer(condition: {}) click to toggle source

条件提示する

@param [Hash<Symbol, Object>] condition 条件

@return [Merchant] 自インスタンス

# File lib/zakuro/merchant.rb, line 37
def offer(condition: {})
  failed = Condition.validate(hash: condition)
  raise Output::ZakuroError, failed.join('\n') unless failed.empty?

  @condition.rewrite(hash: condition)

  self
end