| 708 | } |
| 709 | |
| 710 | void GDScriptSyntaxHighlighter::_update_cache() { |
| 711 | class_names.clear(); |
| 712 | reserved_keywords.clear(); |
| 713 | member_keywords.clear(); |
| 714 | global_functions.clear(); |
| 715 | color_regions.clear(); |
| 716 | color_region_cache.clear(); |
| 717 | |
| 718 | font_color = text_edit->get_theme_color(SceneStringName(font_color)); |
| 719 | symbol_color = EDITOR_GET("text_editor/theme/highlighting/symbol_color"); |
| 720 | function_color = EDITOR_GET("text_editor/theme/highlighting/function_color"); |
| 721 | number_color = EDITOR_GET("text_editor/theme/highlighting/number_color"); |
| 722 | member_variable_color = EDITOR_GET("text_editor/theme/highlighting/member_variable_color"); |
| 723 | |
| 724 | /* Engine types. */ |
| 725 | const Color types_color = EDITOR_GET("text_editor/theme/highlighting/engine_type_color"); |
| 726 | List<StringName> types; |
| 727 | ClassDB::get_class_list(&types); |
| 728 | for (const StringName &E : types) { |
| 729 | if (ClassDB::is_class_exposed(E)) { |
| 730 | class_names[E] = types_color; |
| 731 | } |
| 732 | } |
| 733 | |
| 734 | /* Global enums. */ |
| 735 | List<StringName> global_enums; |
| 736 | CoreConstants::get_global_enums(&global_enums); |
| 737 | for (const StringName &enum_name : global_enums) { |
| 738 | class_names[enum_name] = types_color; |
| 739 | } |
| 740 | |
| 741 | /* User types. */ |
| 742 | const Color usertype_color = EDITOR_GET("text_editor/theme/highlighting/user_type_color"); |
| 743 | List<StringName> global_classes; |
| 744 | ScriptServer::get_global_class_list(&global_classes); |
| 745 | for (const StringName &E : global_classes) { |
| 746 | class_names[E] = usertype_color; |
| 747 | } |
| 748 | |
| 749 | /* Autoloads. */ |
| 750 | for (const KeyValue<StringName, ProjectSettings::AutoloadInfo> &E : ProjectSettings::get_singleton()->get_autoload_list()) { |
| 751 | const ProjectSettings::AutoloadInfo &info = E.value; |
| 752 | if (info.is_singleton) { |
| 753 | class_names[info.name] = usertype_color; |
| 754 | } |
| 755 | } |
| 756 | |
| 757 | const GDScriptLanguage *gdscript = GDScriptLanguage::get_singleton(); |
| 758 | |
| 759 | /* Core types. */ |
| 760 | const Color basetype_color = EDITOR_GET("text_editor/theme/highlighting/base_type_color"); |
| 761 | List<String> core_types; |
| 762 | gdscript->get_core_type_words(&core_types); |
| 763 | for (const String &E : core_types) { |
| 764 | class_names[StringName(E)] = basetype_color; |
| 765 | } |
| 766 | class_names[SNAME("Variant")] = basetype_color; |
| 767 | class_names[SNAME("void")] = basetype_color; |
nothing calls this directly
no test coverage detected