Merge pull request #12957 from bojidar-bg/12928-numeric-underscores

Allow underscores in GDScript numeric literals
This commit is contained in:
Rémi Verschelde 2017-11-16 09:04:31 +01:00 committed by GitHub
commit 3002130a6d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 4 deletions

View file

@ -885,6 +885,9 @@ void GDTokenizerText::_advance() {
return;
}
sign_found = true;
} else if (GETCHAR(i) == '_') {
i++;
continue; // Included for readability, shouldn't be a part of the string
} else
break;
@ -897,7 +900,7 @@ void GDTokenizerText::_advance() {
return;
}
INCPOS(str.length());
INCPOS(i);
if (hexa_found) {
int64_t val = str.hex_to_int64();
_make_constant(val);

View file

@ -894,17 +894,18 @@ void TextEdit::_notification(int p_what) {
is_hex_notation = false;
}
// check for dot or 'x' for hex notation in floating point number
if ((str[j] == '.' || str[j] == 'x') && !in_word && prev_is_number && !is_number) {
// check for dot or underscore or 'x' for hex notation in floating point number
if ((str[j] == '.' || str[j] == 'x' || str[j] == '_') && !in_word && prev_is_number && !is_number) {
is_number = true;
is_symbol = false;
is_char = false;
if (str[j] == 'x' && str[j - 1] == '0') {
is_hex_notation = true;
}
}
if (!in_word && _is_char(str[j])) {
if (!in_word && _is_char(str[j]) && !is_number) {
in_word = true;
}