Sha256: 766b67301c8090a81295921510e0e115a6334a5727c6d6e80392aef85cbe5536

Contents?: true

Size: 748 Bytes

Versions: 26

Compression:

Stored size: 748 Bytes

Contents

require 'stringio'

class ThreadOut

  def initialize(out)
    @out = out
  end

  def write(stuff='')
    if Thread.current[:stdout] then
      Thread.current[:stdout].write stuff
    else
      @out.write stuff
    end
  end

  def puts(stuff='')
    if Thread.current[:stdout] then
      Thread.current[:stdout].puts stuff
    else
      @out.puts stuff
    end
  end
  def print(stuff='')
    if Thread.current[:stdout] then
      Thread.current[:stdout].puts stuff
    else
      @out.print stuff
    end
  end

  def flush
    if Thread.current[:stdout] then
      Thread.current[:stdout].flush
    else
      @out.flush
    end
  end
end

STDOUT.sync = true
STDERR.sync = true
$stdout = ThreadOut.new(STDOUT)
$stderr = ThreadOut.new(STDERR)

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
cxxproject-0.6.31 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.30 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.29 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.28 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.27 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.26 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.25 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.24 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.23 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.21 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.18 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.17 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.14 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.12 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.13 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.11 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.10 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.9 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.6 lib/cxxproject/ext/stdout.rb
cxxproject-0.6.5 lib/cxxproject/ext/stdout.rb