`exception UnknownShellEscape of string`
`exception UnmatchedChar of char`
`val buf_from_str : string -> Stdlib.Buffer.t`
`val __ocaml_lex_tables : Stdlib.Lexing.lex_tables`
`val shell_command : string list -> Stdlib.Lexing.lexbuf -> string list`
`val __ocaml_lex_shell_command_rec : string list -> Stdlib.Lexing.lexbuf -> int -> string list`
`val uquote : string list -> Stdlib.Buffer.t -> Stdlib.Lexing.lexbuf -> string list`
`val __ocaml_lex_uquote_rec : string list -> Stdlib.Buffer.t -> Stdlib.Lexing.lexbuf -> int -> string list`
`val dquote : string list -> Stdlib.Buffer.t -> Stdlib.Lexing.lexbuf -> string list`
`val __ocaml_lex_dquote_rec : string list -> Stdlib.Buffer.t -> Stdlib.Lexing.lexbuf -> int -> string list`
`val squote : string list -> Stdlib.Buffer.t -> Stdlib.Lexing.lexbuf -> string list`
`val __ocaml_lex_squote_rec : string list -> Stdlib.Buffer.t -> Stdlib.Lexing.lexbuf -> int -> string list`
`val parse_string : string -> string list`

given a (possibly quoted) command string, parse it into an argument vector