Example #1
0
std::set<CString> ProjectProperties::FindBugIDs (const CString& msg)
{
	std::vector<CHARRANGE> positions = FindBugIDPositions(msg);
	std::set<CString> bugIDs;

	for (std::vector<CHARRANGE>::iterator iter = positions.begin(), end = positions.end(); iter != end; ++iter)
	{
		bugIDs.insert(msg.Mid(iter->cpMin, iter->cpMax - iter->cpMin));
	}

	return bugIDs;
}
CString ProjectProperties::FindBugID(const CString& msg)
{
	CString sRet;
	if (!sCheckRe.IsEmpty() || (nBugIdPos >= 0))
	{
		std::vector<CHARRANGE> positions = FindBugIDPositions(msg);
		std::set<CString, num_compare> bugIDs;
		for (const auto& pos : positions)
			bugIDs.insert(msg.Mid(pos.cpMin, pos.cpMax - pos.cpMin));

		for (const auto& id : bugIDs)
		{
			sRet += id;
			sRet += _T(" ");
		}
		sRet.Trim();
	}

	return sRet;
}
CString ProjectProperties::FindBugID(const CString& msg)
{
	CString sRet;
	if (!sCheckRe.IsEmpty() || (nBugIdPos >= 0))
	{
		std::vector<CHARRANGE> positions = FindBugIDPositions(msg);
		std::set<CString, num_compare> bugIDs;
		for (std::vector<CHARRANGE>::iterator iter = positions.begin(), end = positions.end(); iter != end; ++iter)
		{
			bugIDs.insert(msg.Mid(iter->cpMin, iter->cpMax - iter->cpMin));
		}

		for (std::set<CString, num_compare>::iterator it = bugIDs.begin(); it != bugIDs.end(); ++it)
		{
			sRet += *it;
			sRet += _T(" ");
		}
		sRet.Trim();
	}

	return sRet;
}