parameters: (s)
return_statement: return s
docstring: Escapes a Windows command-line argument.
  
    So that the Win32 CommandLineToArgv function will turn the escaped result back
    into the original string.
    See http://msdn.microsoft.com/en-us/library/17w5ykft.aspx
    ("Parsing C++ Command-Line Arguments") to understand why we have to do
    this.
  
    Args:
        s: the string to be escaped.
    Returns:
        the escaped string.
docstring_summary: Escapes a Windows command-line argument.
docstring_tokens: Escapes a Windows command - line argument .
function: def _EscapeCommandLineArgumentForMSVS(s):
    """Escapes a Windows command-line argument.
  
    So that the Win32 CommandLineToArgv function will turn the escaped result back
    into the original string.
    See http://msdn.microsoft.com/en-us/library/17w5ykft.aspx
    ("Parsing C++ Command-Line Arguments") to understand why we have to do
    this.
  
    Args:
        s: the string to be escaped.
    Returns:
        the escaped string.
    """
  
    def _Replace(match):
      # For a literal quote, CommandLineToArgv requires an odd number of
      # backslashes preceding it, and it produces half as many literal backslashes
      # (rounded down). So we need to produce 2n+1 backslashes.
      return 2 * match.group(1) + '\\"'
  
    # Escape all quotes so that they are interpreted literally.
    s = quote_replacer_regex.sub(_Replace, s)
    # Now add unescaped quotes so that any whitespace is interpreted literally.
    s = '"' + s + '"'
    return s
function_tokens: def _EscapeCommandLineArgumentForMSVS ( s ) : def _Replace ( match ) : # For a literal quote, CommandLineToArgv requires an odd number of # backslashes preceding it, and it produces half as many literal backslashes # (rounded down). So we need to produce 2n+1 backslashes. return 2 * match . group ( 1 ) + '\\"' # Escape all quotes so that they are interpreted literally. s = quote_replacer_regex . sub ( _Replace , s ) # Now add unescaped quotes so that any whitespace is interpreted literally. s = '"' + s + '"' return s