| 228 | }; |
| 229 | |
| 230 | void BracketValidator::addBracket(QChar bracket, bool isInserted) |
| 231 | { |
| 232 | Q_ASSERT(isFuzzyBracket(bracket)); |
| 233 | |
| 234 | std::size_t index; |
| 235 | bool isOpening; |
| 236 | switch (bracket.unicode()) { |
| 237 | case '{': |
| 238 | index = bracesIndex; |
| 239 | isOpening = true; |
| 240 | break; |
| 241 | case '}': |
| 242 | index = bracesIndex; |
| 243 | isOpening = false; |
| 244 | break; |
| 245 | case '(': |
| 246 | index = parenthesesIndex; |
| 247 | isOpening = true; |
| 248 | break; |
| 249 | case ')': |
| 250 | index = parenthesesIndex; |
| 251 | isOpening = false; |
| 252 | break; |
| 253 | default: |
| 254 | Q_UNREACHABLE(); |
| 255 | } |
| 256 | |
| 257 | m_stacks[index].addBracket(isOpening, isInserted); |
| 258 | } |
| 259 | |
| 260 | enum class FuzzyMatchResult { Fuzzy, NotFuzzy, MatchingFailed }; |
| 261 |
no test coverage detected