# File lib/compass/version.rb, line 8 def parse_version(version, name) nil_or_int = lambda{|i| i.nil? ? nil : i.to_i} segments = version.split(".") { :string => version, :name => name, :major => nil_or_int.call(segments.shift), :minor => nil_or_int.call(segments.shift), :patch => nil_or_int.call(segments.shift), :state => segments.shift, :iteration => nil_or_int.call(segments.shift) } end