Sha256: 89472935c35b81cfcd4039b70bd607edb496e02a25389ea858e13a833da17ff1
Contents?: true
Size: 1012 Bytes
Versions: 29
Compression:
Stored size: 1012 Bytes
Contents
#-- # PDF::Writer for Ruby. # http://rubyforge.org/projects/ruby-pdf/ # Copyright 2003 - 2005 Austin Ziegler. # # Licensed under a MIT-style licence. See LICENCE in the main distribution # for full licensing information. # # $Id: ohash.rb 50 2005-05-16 03:59:21Z austin $ #++ # Based on [ruby-talk:20551]. Updated to (hopefully) be 1.8 friendly. class PDF::Writer::OHash < Hash alias_method :store, :[]= alias_method :each_pair, :each def initialize(*args) @keys = [] super end def []=(key, val) @keys << key unless has_key?(key) super end def delete(key) @keys.delete(key) if has_key?(key) super end def each @keys.each { |k| yield k, self[k] } end def each_key @keys.each { |k| yield k } end def each_value @keys.each { |k| yield self[k] } end def first self[@keys[0]] end def last self[@keys[-1]] end def first?(item) self[@keys[0]] == item end def last?(item) self[@keys[-1]] == item end end
Version data entries
29 entries across 29 versions & 4 rubygems