174 string description = getIssueTypeString() +
" " + action;
176 if (! filePath.empty())
178 string location = filePath;
181 location =
"<code>" + location +
"</code>";
183 description +=
" " + location;
186 description +=
":" + lineBreak;
188 if (! summary.empty())
189 description += summary +
" — ";
193 if (clangIssues && ! clangIssues->isEmpty())
194 description += lineBreak + clangIssues->getDescription(lineBreak);
196 if (shaderIssues && ! shaderIssues->issues().empty())
197 description += lineBreak + shaderIssues->getDescription(lineBreak);
353 vector<string> nodeStrings;
354 for (set<VuoNode *>::iterator i = nodes.begin(); i != nodes.end(); ++i)
358 nodeStrings.push_back(ss.str());
360 sort(nodeStrings.begin(), nodeStrings.end());
363 vector<string> cableStrings;
364 for (set<VuoCable *>::iterator i = cables.begin(); i != cables.end(); ++i)
368 cableStrings.push_back(ss.str());
398 vector<string> uniqueDescriptions;
399 for (vector<VuoCompilerIssue>::iterator i = issues.begin(); i != issues.end(); ++i)
401 string description = (*i).getShortDescription(htmlFormatted);
402 if (find(uniqueDescriptions.begin(), uniqueDescriptions.end(), description) == uniqueDescriptions.end())
403 uniqueDescriptions.push_back(description);
416 vector<string> uniqueDescriptions;
417 for (vector<VuoCompilerIssue>::iterator i = issues.begin(); i != issues.end(); ++i)
419 string description = (*i).getLongDescription(htmlFormatted);
420 if (find(uniqueDescriptions.begin(), uniqueDescriptions.end(), description) == uniqueDescriptions.end())
421 uniqueDescriptions.push_back(description);
434 vector<string> uniqueHints;
435 for (vector<VuoCompilerIssue>::iterator i = issues.begin(); i != issues.end(); ++i)
437 string hint = (*i).getHint(htmlFormatted);
438 if (! hint.empty() && find(uniqueHints.begin(), uniqueHints.end(), hint) == uniqueHints.end())
439 uniqueHints.push_back(hint);