Sha256: 22b5e2e8ec3e603d6ea15984a648b0c2b6b2ae57e010b742a1a185a65e13083d
Contents?: true
Size: 1.05 KB
Versions: 10
Compression:
Stored size: 1.05 KB
Contents
module Kernel def log(*args) MotionSupport.logger.log(*args) end def l(*args) MotionSupport.logger.log(args.map { |a| a.inspect }) end end module MotionSupport class NullLogger def log(*args) end end class StdoutLogger def log(*args) puts args end end class NetworkLogger def initialize(host = "localhost", port = 2000) readStream = Pointer.new(:object) writeStream = Pointer.new(:object) CFStreamCreatePairWithSocketToHost(nil, host, port, readStream, writeStream) @output_stream = writeStream[0] @output_stream.setDelegate(self) @output_stream.scheduleInRunLoop(NSRunLoop.currentRunLoop, forMode:NSDefaultRunLoopMode) @output_stream.open end def log(*args) args.each do |string| data = NSData.alloc.initWithData("#{string}\n".dataUsingEncoding(NSASCIIStringEncoding)) @output_stream.write(data.bytes, maxLength:data.length) end end end mattr_writer :logger def self.logger @logger ||= StdoutLogger.new end end
Version data entries
10 entries across 10 versions & 2 rubygems