lib/csvlint/wrapped_io.rb in csvlint-0.0.1 vs lib/csvlint/wrapped_io.rb in csvlint-0.1.0
- old
+ new
@@ -1,39 +1,21 @@
module Csvlint
- class WrappedIO
- def initialize(io)
- @io = io
- @line = ""
+ class WrappedIO < SimpleDelegator
+ attr_reader :line
+
+ def reset_line
+ @line = ''
end
-
+
def gets(*args)
- if args.count == 1 && args[0].is_a?(String)
- delim = args[0]
- @line = "" if @new_line
- s = @io.gets(delim)
- if s != nil
- @line << s
+ if args.size == 1 && args[0].is_a?(String)
+ s = __getobj__.gets(args[0])
+ if s
+ @line << s
end
- return s
+ s
else
- @io.gets(*args)
+ __getobj__.gets(*args)
end
end
-
- def eof?
- @io.eof?
- end
-
- def finished
- @new_line = true
- end
-
- def line
- @line
- end
-
- def method_missing(method, *args)
- @io.send(method, *args)
- end
-
end
-end
\ No newline at end of file
+end