Skip to main content

for_ruby_string

Function for_ruby_string 

Source
pub fn for_ruby_string(input: &str) -> String
Expand description

encodes input for safe embedding in a ruby double-quoted string literal ("...").

escapes backslashes, double quotes, hash signs (to prevent interpolation), and control characters using ruby’s escape syntax. non-ASCII unicode passes through unchanged (ruby 2.0+ source files are UTF-8 by default). unicode non-characters are replaced with space.

§examples

use contextual_encoder::for_ruby_string;

assert_eq!(for_ruby_string(r#"say "hi""#), r#"say \"hi\""#);
assert_eq!(for_ruby_string("line\nbreak"), r"line\nbreak");
assert_eq!(for_ruby_string("café"), "café");
assert_eq!(for_ruby_string("hello #{name}"), r"hello \#{name}");