Improve and fix GDScript documentation generation & behavior

Removes documentation generation (docgen) from the GDScript compiler to
its own file. Adds support for GDScript enums and signal parameters and
quite a few other assorted fixes and improvements.
This commit is contained in:
ocean (they/them) 2023-04-21 09:32:26 -04:00
parent 6f1a52b017
commit 6783ff69c0
11 changed files with 431 additions and 347 deletions

View file

@ -83,6 +83,7 @@ class GDScript : public Script {
friend class GDScriptFunction;
friend class GDScriptAnalyzer;
friend class GDScriptCompiler;
friend class GDScriptDocGen;
friend class GDScriptLanguage;
friend struct GDScriptUtilityFunctionsDefinitions;
@ -113,16 +114,7 @@ class GDScript : public Script {
DocData::ClassDoc doc;
Vector<DocData::ClassDoc> docs;
String doc_brief_description;
String doc_description;
Vector<DocData::TutorialDoc> doc_tutorials;
HashMap<String, String> doc_functions;
HashMap<String, String> doc_variables;
HashMap<String, String> doc_constants;
HashMap<String, String> doc_signals;
HashMap<String, DocData::EnumDoc> doc_enums;
void _clear_doc();
void _update_doc();
void _add_doc(const DocData::ClassDoc &p_inner_class);
#endif