Sha256: 961b83b8039bc465088c776964cc730d018004d39d2a9d85734dc9dee9c2ed6c

Contents?: true

Size: 468 Bytes

Versions: 43

Compression:

Stored size: 468 Bytes

Contents

require 'randexp'

module Pact
  module Reification

    def self.from_term(term)
      case
      when term.respond_to?(:generate)
        term.generate
      when term.is_a?(Hash)
        term.inject({}) do |mem, (key,term)|
          mem[key] = from_term(term)
        mem
        end
      when term.is_a?(Array)
        term.inject([]) do |mem, term|
          mem << from_term(term)
          mem
        end
      else
        term
      end
    end

  end
end

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
pact-0.1.37 lib/pact/reification.rb
pact-0.1.35 lib/pact/reification.rb
pact-0.1.28 lib/pact/reification.rb