|
|
|
|
@ -2676,10 +2676,6 @@ static bool _get_subscript_type(GDScriptParser::CompletionContext &p_context, co
|
|
|
|
|
if (p_context.base == nullptr) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
if (p_subscript->base->datatype.type_source == GDScriptParser::DataType::ANNOTATED_EXPLICIT) {
|
|
|
|
|
// Annotated type takes precedence.
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const GDScriptParser::GetNodeNode *get_node = nullptr;
|
|
|
|
|
|
|
|
|
|
@ -2689,6 +2685,11 @@ static bool _get_subscript_type(GDScriptParser::CompletionContext &p_context, co
|
|
|
|
|
} break;
|
|
|
|
|
|
|
|
|
|
case GDScriptParser::Node::IDENTIFIER: {
|
|
|
|
|
if (p_subscript->base->datatype.type_source == GDScriptParser::DataType::ANNOTATED_EXPLICIT) {
|
|
|
|
|
// Annotated type takes precedence.
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const GDScriptParser::IdentifierNode *identifier_node = static_cast<GDScriptParser::IdentifierNode *>(p_subscript->base);
|
|
|
|
|
|
|
|
|
|
switch (identifier_node->source) {
|
|
|
|
|
|