fileify

Macro fileify 

Source
macro_rules! fileify {
    ($string:expr) => { ... };
    ($string:expr, $prefix:expr) => { ... };
    ($string:expr, $prefix:expr, $suffix:expr) => { ... };
}
Expand description

fileify takes a string, strips leading and trailing whitespace both for the whole string and for each line, and makes sure that a final newline is present. This serves mostly aesthetic purposes (file contents can be indented):

assert_eq!(
	fileify!(
		"
		line 1
		line 2
		"
	),
	"line 1\nline 2\n"
);

Overloads allow prefixing and suffixing each line:

let file = fileify!("
    line 1
    line 2
", "\t");
assert_eq!(file, "\tline 1\n\tline 2\n");

let file = fileify!("
    line 1
    line 2
", "\t", ",");
assert_eq!(file, "\tline 1,\n\tline 2,\n");

let file = fileify!("
    line 1
    line 2
", "", ",");
assert_eq!(file, "line 1,\nline 2,\n");