Sha256: d02747db2509b4f04912a74c8ad72d7aecb0082212adaea34ff69670f37a6747
Contents?: true
Size: 547 Bytes
Versions: 66
Compression:
Stored size: 547 Bytes
Contents
module Ruco # Can be used like a hash, but also allows .key access class OptionAccessor attr_reader :wrapped delegate :[], :[]=, :slice, :to => :wrapped def initialize(wrapped={}) @wrapped = wrapped end def nested(key) Hash[wrapped.map do |k,v| if k.to_s =~ /^#{key}_(.*)$/ [$1.to_sym,v] end end.compact] end def method_missing(method, *args) base = method.to_s.sub('=','').to_sym raise if args.size != 1 @wrapped[base] = args.first end end end
Version data entries
66 entries across 66 versions & 1 rubygems