pub fn to_str(&self) -> Option<String> {
        match *self {
            // clone the string so the caller cannot mutate it and wreak havoc
            Value::Symbol(ref sym) => Some(sym.clone()),
            Value::String(ref s) => Some(s.clone()),
            _ => None,
        }
    }
/// `to_str` extracts the string value of symbols and strings.
/// The returned value is a clone of the original.
/// Returns `None` if the value is neither a symbol nor string.
`to_str` extracts the string value of symbols and strings.
The returned value is a clone of the original.
Returns `None` if the value is neither a symbol nor string.
` to_str ` extracts the string value of symbols and strings . The returned value is a clone of the original . Returns ` None ` if the value is neither a symbol nor string .
pub fn to_str(&self) -> Option<String> {
        match *self {
            // clone the string so the caller cannot mutate it and wreak havoc
            Value::Symbol(ref sym) => Some(sym.clone()),
            Value::String(ref s) => Some(s.clone()),
            _ => None,
        }
    }
pub fn to_str ( & self ) -> Option < String > { match * self { // clone the string so the caller cannot mutate it and wreak havoc Value :: Symbol ( ref sym ) => Some ( sym . clone ( ) ) , Value :: String ( ref s ) => Some ( s . clone ( ) ) , _ => None , } }
`to_str` extracts the string value of symbols and strings.
` to_str ` extracts the string value of symbols and strings .
&self