Sha256: 65eac4f2b354937c1189c7d4b53aed0abea919d3529dd239f12ad621e0840495

Contents?: true

Size: 400 Bytes

Versions: 4

Compression:

Stored size: 400 Bytes

Contents

# frozen_string_literal: true

module Zenaton
  # :nodoc
  module Refinements
    refine Complex do
      # Convert to a simple hash
      def to_zenaton
        {
          'r' => real,
          'i' => imag
        }
      end
    end
  end
end

# Reimplements `json/add/complex`
class Complex
  # Parse from simple hash
  def self.from_zenaton(props)
    Complex(props['r'], props['i'])
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
zenaton-0.6.0 lib/zenaton/refinements/complex.rb
zenaton-0.5.3 lib/zenaton/refinements/complex.rb
zenaton-0.5.2 lib/zenaton/refinements/complex.rb
zenaton-0.5.1 lib/zenaton/refinements/complex.rb