initial edge-triggered epoll model
[rainbows.git] / lib / rainbows / epoll / response_chunk_pipe.rb
blob3ad57a8c8725dabea43cb6f74cec85f1c5f4d6fa
1 # -*- encoding: binary -*-
2 # :enddoc:
4 class Rainbows::Epoll::ResponseChunkPipe < Rainbows::Epoll::ResponsePipe
5   def tryread
6     @io or return
8     case rv = super
9     when String
10       "#{rv.size.to_s(16)}\r\n#{rv}\r\n"
11     when nil
12       close
13       "0\r\n\r\n"
14     else
15       rv
16     end
17   end
18 end