Lines Matching refs:command
80 ParseSingleArgument(llvm::StringRef command) { in ParseSingleArgument() argument
97 size_t regular = command.find_first_of(" \t\r\"'`\\"); in ParseSingleArgument()
98 arg += command.substr(0, regular); in ParseSingleArgument()
99 command = command.substr(regular); in ParseSingleArgument()
101 if (command.empty()) in ParseSingleArgument()
104 char special = command.front(); in ParseSingleArgument()
105 command = command.drop_front(); in ParseSingleArgument()
108 if (command.empty()) { in ParseSingleArgument()
115 if (strchr(" \t\\'\"`", command.front()) == nullptr) in ParseSingleArgument()
118 arg += command.front(); in ParseSingleArgument()
119 command = command.drop_front(); in ParseSingleArgument()
139 command = ParseDoubleQuotes(command, arg); in ParseSingleArgument()
143 size_t quoted = command.find(special); in ParseSingleArgument()
144 arg += command.substr(0, quoted); in ParseSingleArgument()
145 command = command.substr(quoted); in ParseSingleArgument()
149 if (!command.empty()) in ParseSingleArgument()
150 command = command.drop_front(); in ParseSingleArgument()
156 return std::make_tuple(arg, first_quote_char, command); in ParseSingleArgument()
168 Args::Args(llvm::StringRef command) { SetCommandString(command); } in Args() argument
211 bool Args::GetCommandString(std::string &command) const { in GetCommandString()
212 command.clear(); in GetCommandString()
216 command += ' '; in GetCommandString()
219 command += quote; in GetCommandString()
220 command += m_entries[i].ref(); in GetCommandString()
222 command += quote; in GetCommandString()
228 bool Args::GetQuotedCommandString(std::string &command) const { in GetQuotedCommandString()
229 command.clear(); in GetQuotedCommandString()
233 command += ' '; in GetQuotedCommandString()
236 command += m_entries[i].quote; in GetQuotedCommandString()
237 command += m_entries[i].ref(); in GetQuotedCommandString()
238 command += m_entries[i].quote; in GetQuotedCommandString()
240 command += m_entries[i].ref(); in GetQuotedCommandString()
247 void Args::SetCommandString(llvm::StringRef command) { in SetCommandString() argument
251 command = ltrimForArgs(command); in SetCommandString()
254 while (!command.empty()) { in SetCommandString()
255 std::tie(arg, quote, command) = ParseSingleArgument(command); in SetCommandString()
258 command = ltrimForArgs(command); in SetCommandString()