Sha256: b75d48b5cc972eac2a0ed3722801390b31c77b23acaf68a03a1d315ea2b98ea3

Contents?: true

Size: 414 Bytes

Versions: 18

Compression:

Stored size: 414 Bytes

Contents

module Staccato
  # Extends OpenStruct with `[]` access method when
  #   the current version of ruby does not include it
  class OptionSet < OpenStruct
    extend Forwardable

    unless OpenStruct.instance_methods.include?(:each)
      include Enumerable

      def_delegators :@table, :each
    end

    unless OpenStruct.instance_methods.include?(:[])
      def_delegators :@table, :[], :[]=
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
staccato-0.5.3 lib/staccato/option_set.rb
staccato-0.5.2 lib/staccato/option_set.rb
staccato-0.5.1 lib/staccato/option_set.rb
staccato-0.5.0 lib/staccato/option_set.rb
staccato-0.4.7 lib/staccato/option_set.rb
staccato-0.4.6 lib/staccato/option_set.rb
staccato-0.4.5 lib/staccato/option_set.rb
staccato-0.4.4 lib/staccato/option_set.rb
staccato-0.4.3 lib/staccato/option_set.rb
staccato-0.4.2 lib/staccato/option_set.rb
staccato-0.4.1 lib/staccato/option_set.rb
staccato-0.4.0 lib/staccato/option_set.rb
staccato-0.3.1 lib/staccato/option_set.rb
staccato-0.3.0 lib/staccato/option_set.rb
staccato-0.2.1 lib/staccato/option_set.rb
staccato-0.2.0 lib/staccato/option_set.rb
staccato-0.1.1 lib/staccato/option_set.rb
staccato-0.1.0 lib/staccato/option_set.rb