mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-27 10:02:01 +00:00
identifier parser now supports '.' [#CONV-7967]
This commit is contained in:
parent
ac42eb45a4
commit
277759146d
@ -135,6 +135,8 @@ bool ParserIdentifier::parseImpl(Pos & pos, Pos end, ASTPtr & node, String & exp
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
while (pos != end)
|
||||
{
|
||||
while (pos != end
|
||||
&& ((*pos >= 'a' && *pos <= 'z')
|
||||
@ -143,6 +145,15 @@ bool ParserIdentifier::parseImpl(Pos & pos, Pos end, ASTPtr & node, String & exp
|
||||
|| (pos != begin && *pos >= '0' && *pos <= '9')))
|
||||
++pos;
|
||||
|
||||
/// Если следующий символ - точка '.' и за ней следует, не цифра,
|
||||
/// то продолжаем парсинг имени идентификатора
|
||||
if (pos != begin && pos + 1 < end && *pos == '.' &&
|
||||
!(*(pos + 1) >= '0' && *(pos + 1) <= '9'))
|
||||
++pos;
|
||||
else
|
||||
break;
|
||||
}
|
||||
|
||||
if (pos != begin)
|
||||
{
|
||||
node = new ASTIdentifier(StringRange(begin, pos), String(begin, pos - begin));
|
||||
|
Loading…
Reference in New Issue
Block a user