tpitale/staccato

View on GitHub
lib/staccato/option_set.rb

Summary

Maintainability
A
0 mins
Test Coverage
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