lib/rio/stream/duplex.rb in rio-0.3.7 vs lib/rio/stream/duplex.rb in rio-0.3.8

- old
+ new

@@ -1,8 +1,8 @@ #-- # =============================================================================== -# Copyright (c) 2005, Christopher Kleckner +# Copyright (c) 2005, 2006 Christopher Kleckner # All rights reserved # # This file is part of the Rio library for ruby. # # Rio is free software; you can redistribute it and/or modify @@ -20,11 +20,11 @@ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # =============================================================================== #++ # # To create the documentation for Rio run the command -# rake rdoc +# ruby build_doc.rb # from the distribution directory. Then point your browser at the 'doc/rdoc' directory. # # Suggested Reading # * RIO::Doc::SYNOPSIS # * RIO::Doc::INTRO @@ -39,27 +39,30 @@ require 'rio/stream/open' module RIO module Stream module Duplex - class Open < RIO::Stream::Open - def input() stream_state('Stream::Duplex::Input') end - def output() stream_state('Stream::Duplex::Output') end - def inout() stream_state('Stream::Duplex::InOut') end - end - module Ops module Output def wclose() #p "wclose #{self}" ioh.close_write return self.close.softreset if ioh.closed? self end end - module Input - end end + class Open < RIO::Stream::Open + def output() super.extend(Ops::Output) end + def inout() super.extend(Ops::Output) end + end + end + end +end +__END__ +module RIO + module Stream + module Duplex class Input < RIO::Stream::Input include Ops::Input end