swift
matchinglog.cpp
1 // SPDX-FileCopyrightText: Copyright (C) 2019 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
5 
6 #include <QStringList>
7 
8 namespace swift::misc::simulation
9 {
11  const QString &matchingLogFlagToString(MatchingLogFlag logFlag)
12  {
13  static const QString logNothing("nothing");
14  static const QString logModelstring("model string");
15  static const QString logStepwiseReduce("step wise reduce");
16  static const QString logScoring("scoring");
17  static const QString logCombinedDefaultType("combined default type");
18  static const QString logSimplified("simplified");
19  static const QString logAll("all");
20 
21  switch (logFlag)
22  {
23  case MatchingLogCombinedDefaultType: return logCombinedDefaultType;
24  case MatchingLogNothing: return logNothing;
25  case MatchingLogModelstring: return logModelstring;
26  case MatchingLogStepwiseReduce: return logStepwiseReduce;
27  case MatchingLogScoring: return logScoring;
28  case MatchingLogSimplified: return logSimplified;
29  case MatchingLogAll: return logAll;
30  default: break;
31  }
32 
33  static const QString unknown("unknown");
34  return unknown;
35  }
36 
38  QString matchingLogToString(MatchingLog log)
39  {
40  if (log == MatchingLogNothing) { return matchingLogFlagToString(MatchingLogNothing); }
41  QStringList l;
42  if (log.testFlag(MatchingLogCombinedDefaultType))
43  {
44  l << matchingLogFlagToString(MatchingLogCombinedDefaultType);
45  }
46  if (log.testFlag(MatchingLogModelstring)) { l << matchingLogFlagToString(MatchingLogModelstring); }
47  if (log.testFlag(MatchingLogStepwiseReduce)) { l << matchingLogFlagToString(MatchingLogStepwiseReduce); }
48  if (log.testFlag(MatchingLogScoring)) { l << matchingLogFlagToString(MatchingLogScoring); }
49  return l.join(", ");
50  }
51 } // namespace swift::misc::simulation