Sha256: 3a707b54a88f4bf0dbb7e029c406bf8ab3a9b846505e456c5b1c5c700e3e5f2e
Contents?: true
Size: 1.38 KB
Versions: 2
Compression:
Stored size: 1.38 KB
Contents
class Symbol # Standard in ruby 1.9. See official documentation[http://ruby-doc.org/core-1.9/classes/Symbol.html] def to_proc Proc.new { |*args| args.shift.__send__(self, *args) } end unless :to_proc.respond_to?(:to_proc) # Standard in ruby 1.9. See official documentation[http://ruby-doc.org/core-1.9/classes/Symbol.html] [ [%w(capitalize downcase next succ swapcase upcase), {:after => ".to_sym"}], [%w(=~ [] empty? length match size), {}] ].each { |methods, options| methods.each do |method| module_eval <<-end_eval def #{method}(*args) to_s.#{method}(*args)#{options[:after]} end unless method_defined? :#{method} end_eval end } # Standard in ruby 1.9. See official documentation[http://ruby-doc.org/core-1.9/classes/Symbol.html] def <=>(with) return nil unless with.is_a? Symbol to_s <=> with.to_s end unless method_defined? :"<=>" # Standard in ruby 1.9. See official documentation[http://ruby-doc.org/core-1.9/classes/Symbol.html] def casecmp(with) return nil unless with.is_a? Symbol to_s.casecmp(with.to_s) end unless method_defined? :casecmp # Standard in ruby 1.9. See official documentation[http://ruby-doc.org/core-1.9/classes/Symbol.html] unless ancestors.include? Comparable alias_method :dont_override_equal_please, :== include Comparable alias_method :==, :dont_override_equal_please end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
marcandre-backports-1.6.8 | lib/backports/symbol.rb |
backports-1.6.8 | lib/backports/symbol.rb |