Sha256: c7ee9bc2ecdf3e5693b1d6ee3f4efffb3afd913bc5b14eb5761616f06dfb0b3b

Contents?: true

Size: 581 Bytes

Versions: 4

Compression:

Stored size: 581 Bytes

Contents

require 'forwardable'

module Flows
  class Contract
    # Shortcuts for contract creation.
    module Helpers
      extend Forwardable

      def_delegator CaseEq, :new, :case_eq
      def_delegator Predicate, :new, :predicate

      def_delegator Transformer, :new, :transformer
      def_delegator Compose, :new, :compose
      def_delegator Either, :new, :either

      def_delegator Flows::Contract::Hash, :new, :hash
      def_delegator HashOf, :new, :hash_of
      def_delegator Flows::Contract::Array, :new, :array
      def_delegator Tuple, :new, :tuple
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
flows-0.6.0 lib/flows/contract/helpers.rb
flows-0.5.1 lib/flows/contract/helpers.rb
flows-0.5.0 lib/flows/contract/helpers.rb
flows-0.4.0 lib/flows/contract/helpers.rb