diff --git a/src/libstd/io.rs b/src/libstd/io.rs index 890a53690d96a..a18c95c368b89 100644 --- a/src/libstd/io.rs +++ b/src/libstd/io.rs @@ -1702,6 +1702,22 @@ pub fn println(s: &str) { stdout().write_line(s); } +/** +* Prints every object that implements the ToStr trait to standard output, followed by a newline. +* +* It works like, eg, ruby's puts. +* +* # Example +* +* ~~~ {.rust} +* // puts is imported into the prelude, and so is always available. +* puts(3u); +* ~~~ +*/ +pub fn puts(input: T) { + stdout().write_line(input.to_str()); +} + pub struct BytesWriter { bytes: @mut ~[u8], pos: @mut uint, diff --git a/src/libstd/prelude.rs b/src/libstd/prelude.rs index 1672f0a902e71..382579ed53037 100644 --- a/src/libstd/prelude.rs +++ b/src/libstd/prelude.rs @@ -39,7 +39,7 @@ pub use option::{Option, Some, None}; pub use result::{Result, Ok, Err}; // Reexported functions -pub use io::{print, println}; +pub use io::{print, println, puts}; pub use iter::range; pub use from_str::from_str;