Sha256: f032ae326345fe4131bd6d393dc1bc998a4a428d4f4357dfd0317db4a3dbe84c
Contents?: true
Size: 817 Bytes
Versions: 11
Compression:
Stored size: 817 Bytes
Contents
require 'deadly_serious/engine/json_io' module DeadlySerious module Engine module SimpleJsonProcess def run(readers: [], writers: []) reader = JsonIo.new(readers.first) unless readers.empty? @writer = JsonIo.new(writers.first) unless writers.empty? if reader reader.each do |packet| if packet.is_a? Array super(*packet) else super(packet) end end else super() end rescue Errno::EPIPE # Ignore it. We expect that sometimes =) end # Send a packet to the next process def send(*packet) raise 'No "writer" defined' unless @writer @writer << packet unless packet.empty? end alias :emit :send end end end
Version data entries
11 entries across 11 versions & 1 rubygems