Sha256: 850fb8d1351a6dd3ee3e4d72fb73de3daea2d16471727fd41bca5fcbf52d0269
Contents?: true
Size: 651 Bytes
Versions: 1
Compression:
Stored size: 651 Bytes
Contents
class Operation < Micro::Service::Base attributes :a, :b private def result_of(operation_result) attributes(:a, :operator, :b).merge(result: operation_result) end class Add < Operation attribute :operator, '+' def call! Success(result_of(a + b)) end end class Subtract < Operation attribute :operator, '-' def call! Success(result_of(a - b)) end end class Multiply < Operation attribute :operator, 'x' def call! Success(result_of(a * b)) end end class Divide < Operation attribute :operator, '/' def call! Success(result_of(a / b)) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
u-service-0.13.0 | examples/calculator/calc/operation.rb |