Unify typing of variables, constants and parameters in GDScript

This commit is contained in:
Dmitrii Maganov 2022-12-22 22:43:36 +02:00
parent 1d14c054a1
commit a1d06749f1
17 changed files with 237 additions and 357 deletions

View file

@ -1219,7 +1219,7 @@ GDScriptParser::ParameterNode *GDScriptParser::parse_parameter() {
if (match(GDScriptTokenizer::Token::EQUAL)) {
// Default value.
parameter->default_value = parse_expression(false);
parameter->initializer = parse_expression(false);
}
complete_extents(parameter);
@ -1250,7 +1250,7 @@ GDScriptParser::SignalNode *GDScriptParser::parse_signal() {
push_error("Expected signal parameter name.");
break;
}
if (parameter->default_value != nullptr) {
if (parameter->initializer != nullptr) {
push_error(R"(Signal parameters cannot have a default value.)");
}
if (signal->parameters_indices.has(parameter->identifier->name)) {
@ -1395,7 +1395,7 @@ void GDScriptParser::parse_function_signature(FunctionNode *p_function, SuiteNod
if (parameter == nullptr) {
break;
}
if (parameter->default_value != nullptr) {
if (parameter->initializer != nullptr) {
default_used = true;
} else {
if (default_used) {
@ -4776,9 +4776,9 @@ void GDScriptParser::TreePrinter::print_parameter(ParameterNode *p_parameter) {
push_text(" : ");
print_type(p_parameter->datatype_specifier);
}
if (p_parameter->default_value != nullptr) {
if (p_parameter->initializer != nullptr) {
push_text(" = ");
print_expression(p_parameter->default_value);
print_expression(p_parameter->initializer);
}
}