예제 #1
0
 private MutableString /*!*/ GetContent()
 {
     if (_mode.IsClosed())
     {
         throw RubyExceptions.CreateIOError("closed stream");
     }
     return(_content);
 }
예제 #2
0
        public void CloseReader()
        {
            var duplex = GetStream().BaseStream as DuplexStream;

            if (duplex == null && _mode.CanWrite() || duplex != null && !_mode.CanRead())
            {
                throw RubyExceptions.CreateIOError("closing non-duplex IO for reading");
            }

            if (duplex != null)
            {
                duplex.Reader.Close();
            }

            _mode = _mode.CloseRead();
            if (_mode.IsClosed())
            {
                Close();
            }
        }
예제 #3
0
파일: RubyIO.cs 프로젝트: rpattabi/ironruby
        public void CloseReader() {
            var duplex = GetStream().BaseStream as DuplexStream;
            if (duplex == null && _mode.CanWrite() || duplex != null && !_mode.CanRead()) {
                throw RubyExceptions.CreateIOError("closing non-duplex IO for reading");
            } 
            
            if (duplex != null) {
                duplex.Reader.Close();
            }

            _mode = _mode.CloseRead();
            if (_mode.IsClosed()) {
                Close();
            }
        }