libxcb #1

Merged
hayodea merged 20 commits from libxcb into master 2025-07-22 06:14:36 +00:00
Showing only changes of commit 76e465bd1d - Show all commits
+19 -3
View File
@@ -26,10 +26,26 @@
"(" { return LPAREN; }
")" { return RPAREN; }
[ \t]*"="[ \t]* { return EQUALS; } // Allow optional whitespace around equals
([^=\|\(\) \t\r\n]|\\[ \t])+ {
(\\.|[^=\|\(\) \t\r\n])+ {
std::string token(yytext);
token.erase(std::remove(token.begin(), token.end(), '\\'), token.end());
deviceSpecplval.str = strdup(token.c_str());
// Unescape logic for backslash, pipe
std::string unescaped;
unescaped.reserve(token.size());
for (size_t i = 0; i < token.size(); ++i)
{
if (token[i] == '\\' && i + 1 < token.size())
{
unescaped.push_back(token[++i]);
}
else
{
unescaped.push_back(token[i]);
}
}
deviceSpecplval.str = strdup(unescaped.c_str());
return STRING;
}
\r?\n { /* ignore newlines */ }