Sha256: c862753f9579960cd0c0a142be5547885a8bb65775c4776be56c241de244909d

Contents?: true

Size: 1004 Bytes

Versions: 27

Compression:

Stored size: 1004 Bytes

Contents

# coding: utf-8
#
# Why would we ever use Ruby 1.8.7 when we can backport with something
# as simple as this?
#
# copied from prawn.
# modified by Hideo NAKAMURA
#
class String #:nodoc:
  def first_line
    self.each_line { |line| return line }
  end
  unless "".respond_to?(:lines)
    alias_method :lines, :to_a
  end
  unless "".respond_to?(:each_char)
    def each_char #:nodoc:
      # copied from jcode
      if block_given?
        scan(/./m) { |x| yield x }
      else
        scan(/./m)
      end
    end
  end

  unless "".respond_to?(:bytesize)
    def bytesize # :nodoc:
      self.length
    end
  end

  unless "".respond_to?(:ord)
    def ord
      self[0]
    end
  end
end

unless File.respond_to?(:binread)
  def File.binread(file) #:nodoc:
    File.open(file,"rb") { |f| f.read }
  end
end

if RUBY_VERSION < "1.9"

  def ruby_18 #:nodoc:
    yield
  end

  def ruby_19 #:nodoc:
    false
  end

else

  def ruby_18 #:nodoc:
    false
  end

  def ruby_19 #:nodoc:
    yield
  end
end

Version data entries

27 entries across 27 versions & 3 rubygems

Version Path
writeexcel-1.0.9 lib/writeexcel/compatibility.rb
writeexcel-1.0.8 lib/writeexcel/compatibility.rb
writeexcel-1.0.7 lib/writeexcel/compatibility.rb
writeexcel-1.0.6 lib/writeexcel/compatibility.rb
writeexcel-1.0.5 lib/writeexcel/compatibility.rb
writeexcel-1.0.4 lib/writeexcel/compatibility.rb
writeexcel-1.0.3 lib/writeexcel/compatibility.rb
writeexcel-1.0.2 lib/writeexcel/compatibility.rb
writeexcel-1.0.1 lib/writeexcel/compatibility.rb
writeexcel-1.0.0 lib/writeexcel/compatibility.rb
writeexcel-0.6.19 lib/writeexcel/compatibility.rb
writeexcel-0.6.18 lib/writeexcel/compatibility.rb
writeexcel-0.6.17 lib/writeexcel/compatibility.rb
sunrise-cms-0.5.0.rc1 vendor/bundle/ruby/1.9.1/gems/writeexcel-0.6.16/lib/writeexcel/compatibility.rb
writeexcel-0.6.16 lib/writeexcel/compatibility.rb
writeexcel-0.6.15 lib/writeexcel/compatibility.rb
writeexcel-0.6.14 lib/writeexcel/compatibility.rb
sunrise-cms-0.3.3 vendor/bundle/ruby/1.9.1/gems/writeexcel-0.6.13/lib/writeexcel/compatibility.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/writeexcel-0.6.13/lib/writeexcel/compatibility.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/writeexcel-0.6.13/lib/writeexcel/compatibility.rb