Refactor message pattern generation in TextElement for improved readability and maintainability; update table flags in MessageEditor for consistency.

This commit is contained in:
scawful
2025-04-11 02:58:23 -04:00
parent 216ee23f51
commit e0b95d8071
2 changed files with 18 additions and 15 deletions

View File

@@ -176,11 +176,15 @@ struct TextElement {
}
HasArgument = arg;
Description = description;
Pattern =
arg ? "\\[" + Token + ":?([0-9A-F]{1,2})\\]" : "\\[" + Token + "\\]";
Pattern = absl::StrReplaceAll(Pattern, {{"[", "\\["}, {"]", "\\]"}});
StrictPattern = absl::StrCat("^", Pattern, "$");
StrictPattern = "^" + Pattern + "$";
if (arg) {
Pattern = absl::StrFormat(
"\\[%s(:[0-9A-F]{1,2})?\\]",
absl::StrReplaceAll(Token, {{"[", "\\["}, {"]", "\\]"}}));
} else {
Pattern = absl::StrFormat(
"\\[%s\\]", absl::StrReplaceAll(Token, {{"[", "\\["}, {"]", "\\]"}}));
}
StrictPattern = absl::StrFormat("^%s$", Pattern);
}
std::string GetParamToken(uint8_t value = 0) const {