Sha256: 9a16d88aa61fa230dfa5c0741583ced2fcd46211b3a1798f961cc0dc1e07a569

Contents?: true

Size: 1.04 KB

Versions: 5

Compression:

Stored size: 1.04 KB

Contents

#! /usr/bin/env ruby
# -*- ruby -*-

require_relative '../lib/invocations'

class Invocation
  def self.test
    {
      '&lambda' => (self.new(&lambda { |am1, am2, ao = nil, *ar, km1:, km2:, ko: nil, **kr| [am1, am2, ao, ar, km1, km2, ko, kr] })),
      'lambda'  => (self.new(lambda  { |am1, am2, ao = nil, *ar, km1:, km2:, ko: nil, **kr| [am1, am2, ao, ar, km1, km2, ko, kr] })),
      '&proc'   => (self.new(&proc   { |am1, am2, ao = nil, *ar, km1:, km2:, ko: nil, **kr| [am1, am2, ao, ar, km1, km2, ko, kr] })),
      'proc'    => (self.new(proc    { |am1, am2, ao = nil, *ar, km1:, km2:, ko: nil, **kr| [am1, am2, ao, ar, km1, km2, ko, kr] })),
      '&block'  => (self.new         { |am1, am2, ao = nil, *ar, km1:, km2:, ko: nil, **kr| [am1, am2, ao, ar, km1, km2, ko, kr] }),
    }
  end
end

abort unless 1 == Invocation
                    .test
                    .map { |style, function| [style, function.(1).(2).(3).(4, 5).(km1: 6).(km2: 7)] }
                    .to_h
                    .values
                    .uniq
                    .length

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
invocations-0.2.10 tests/invocations.rb
invocations-0.2.9 tests/invocations.rb
invocations-0.2.8 tests/invocations.rb
invocations-0.2.7 tests/invocations.rb
invocations-0.2.6 tests/invocations.rb