Sha256: 5f9432c6b97bedca4b27baf54d53b0b82e829643145b05b99508b8db44c5ef97
Contents?: true
Size: 660 Bytes
Versions: 2
Compression:
Stored size: 660 Bytes
Contents
module SubDiff class Collection < SimpleDelegator extend Forwardable include Enumerable def_delegators :diffs, :each, :size def_delegators :__getobj__, :to_s attr_reader :string, :diffs def initialize(string) @string = string @diffs = [] super(string) end def changed? diffs.any?(&:changed?) end def clear diffs.clear __setobj__('') self end def push(diff) unless diff.empty? diffs << diff __setobj__(diffs.join) end end def reset clear __setobj__(string) yield if block_given? self end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
sub_diff-1.0.7 | lib/sub_diff/collection.rb |
sub_diff-1.0.6 | lib/sub_diff/collection.rb |