I could use:
File.open('/dev/null', 'w')
on Unix systems, but if there is a Ruby way to achieve this, I’d like to use it. I am just looking for an I/O stream, that immediately "trashes" all writes, kind of like a null-object.
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
No, I don’t believe there is anything like a null stream in Ruby, at least in earlier versions. In that case, you must make one yourself. Depending on the methods that it will call, you will need to write
stub methods on the null stream class, like this:
The above example is by no means complete. For example, some streams may require calling the
write,putsor other methods. Moreover, some methods should be implemented by returningselfin their methods, like<<, others not.