mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-23 16:12:01 +00:00
identifier parser now supports '.' [#CONV-7967]
This commit is contained in:
parent
ac42eb45a4
commit
277759146d
@ -136,12 +136,23 @@ bool ParserIdentifier::parseImpl(Pos & pos, Pos end, ASTPtr & node, String & exp
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
while (pos != end
|
while (pos != end)
|
||||||
&& ((*pos >= 'a' && *pos <= 'z')
|
{
|
||||||
|| (*pos >= 'A' && *pos <= 'Z')
|
while (pos != end
|
||||||
|| (*pos == '_')
|
&& ((*pos >= 'a' && *pos <= 'z')
|
||||||
|| (pos != begin && *pos >= '0' && *pos <= '9')))
|
|| (*pos >= 'A' && *pos <= 'Z')
|
||||||
++pos;
|
|| (*pos == '_')
|
||||||
|
|| (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)
|
if (pos != begin)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user