pub(crate) fn strip_quotes(input: &str) -> String {
    let mut escaped = false;
    let mut out: Vec<char> = Vec::new();

    for c in input.chars() {
        if escaped {
            out.push(c);
            escaped = false;
        } else {
            match c {
                '"' => {}
                '\\' => {
                    escaped = true;
                }
                _ => {
                    out.push(c);
                }
            }
        }
    }

    out.iter().collect()
}
/// Remove quotes from a string, but preserve any escaped quotes.
Remove quotes from a string, but preserve any escaped quotes.
Remove quotes from a string but preserve any escaped quotes .
pub(crate) fn strip_quotes(input: &str) -> String {
    let mut escaped = false;
    let mut out: Vec<char> = Vec::new();
    for c in input.chars() {
        if escaped {
            out.push(c);
            escaped = false;
        } else {
            match c {
                '"' => {}
                '\\' => {
                    escaped = true;
                }
                _ => {
                    out.push(c);
                }
            }
        }
    }
    out.iter().collect()
}
pub ( crate ) fn strip_quotes ( input : & str ) -> String { let mut escaped = false ; let mut out : Vec < char > = Vec :: new ( ) ; for c in input . chars ( ) { if escaped { out . push ( c ) ; escaped = false ; } else { match c { '"' => { } '\\' => { escaped = true ; } _ => { out . push ( c ) ; } } } } out . iter ( ) . collect ( ) }
Remove quotes from a string, but preserve any escaped quotes.
Remove quotes from a string but preserve any escaped quotes .
input
&str