Sha256: 56b0b81d6b9ea612c0b0c8f8b059da9dc155301de14aebf0838c6f79c2885d22

Contents?: true

Size: 902 Bytes

Versions: 3

Compression:

Stored size: 902 Bytes

Contents

# -*- coding: utf-8 -*-
# Copyright (C) 2010, 2011 Rocky Bernstein <rockyb@rubyforge.net>

# Nukes output. Used for example in sourcing where you don't want
# to see output.
# 

require 'rubygems'; require 'require_relative'
require_relative 'base_io'

class Trepan::OutputNull < Trepan::OutputBase
  def initialize(out, opts={})
    @closed = false
    super
  end
  
  def close
    @closed = true
  end
  
  def closed?
    !!@closed
  end
  
  def flush
  end
  
  # Use this to set where to write to. output can be a 
  # file object or a string. This code raises IOError on error.
  def write(*args)
  end
  
  # used to write to a debugger that is connected to this
  # `str' written will have a newline added to it
  #
  def writeline( msg)
  end
end

# Demo it
if __FILE__ == $0
  output = Trepan::OutputNull.new(nil)
  p output
  output.write("Invisible")
  output.writeline("Invisible")
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rb8-trepanning-0.1.3 io/null_output.rb
rb8-trepanning-0.1.3-universal-ruby-1.9.2 io/null_output.rb
rb8-trepanning-0.1.3-universal-ruby-1.8.7 io/null_output.rb