Sha256: 160e4471bed8eddf8e7fa2fed7fb8e6168ae443f543ef356d11b3ee60e176ea6

Contents?: true

Size: 599 Bytes

Versions: 1

Compression:

Stored size: 599 Bytes

Contents

module IB
  module Models
    module Contracts
    end
  end
end

require 'ib-ruby/models/contracts/contract'
require 'ib-ruby/models/contracts/option'
require 'ib-ruby/models/contracts/bag'

module IB
  module Models
    # This module contains Contract subclasses
    module Contracts
      # Specialized Contract subclasses representing different security types
      TYPES = Hash.new(Contract)
      TYPES[:bag] = Bag
      TYPES[:option] = Option

      # Returns concrete subclass for this sec_type, or default Contract
      def [] sec_type
        TYPES[sec_type]
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ib-ruby-0.7.6 lib/ib-ruby/models/contracts.rb