Sha256: 0efe4cd70f63a5f5adbbf83ad41f3cb727d1639cee518129780d7cc5da058908

Contents?: true

Size: 549 Bytes

Versions: 3

Compression:

Stored size: 549 Bytes

Contents

module Rink
  module OutputMethod
    class Base
      attr_writer :silenced
      
      def output
        raise NotImplementedError, "output"
      end
      
      def initialize(silenced = false)
        @silenced = silenced
      end
      
      def write(*args)
        print(*args)
      end
      
      def puts(*args)
        print args.join("\n"), "\n"
      end
      
      def print(*args)
        raise NotImplementedError, "print" unless silenced?
      end
      
      def silenced?
        @silenced
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rink-1.0.2 lib/rink/output_method/base.rb
rink-1.0.1 lib/rink/output_method/base.rb
rink-1.0.0 lib/rink/output_method/base.rb