-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add class reference documentation for GDExtension & GDExtensionManager #86968
Conversation
c115260
to
80aa3f0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for being the first person brave enough to attempt to document these classes :-)
doc/classes/GDExtension.xml
Outdated
</description> | ||
</method> | ||
<method name="initialize_library"> | ||
<return type="void" /> | ||
<param index="0" name="level" type="int" enum="GDExtension.InitializationLevel" /> | ||
<description> | ||
Initializes the library bound to this GDextension. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe:
Initializes the library bound to this GDextension. | |
Initializes this GDExtension at the given initialization level. |
This should probably also have a note saying that developers shouldn't call this under normal circumstance, it will be handled by GDExtensionManager
.
I'm actually not entirely sure why we've exposed this at all? It's especially weird considering we haven't exposed deinitialize_library()
, its paired method.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm actually not entirely sure why we've exposed this at all? It's especially weird considering we haven't exposed
deinitialize_library()
, its paired method.
It may be worth discussing this with the rest of the GDExtension team. There have been times before where Reduz and/or others accidentally exposed methods to the documentation & scripting language "just in case" (hence the name of the PR).
After a lot of time has passed, only then you can tell there's a flaw in the API when struggling to write documentation for these.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've added an item to the agenda of tonight's GDExtension meeting, to discuss if this method should even be bound in the first place
11406b0
to
c07ac11
Compare
Addressed all of the above feedback and suggestions. Thank you very much for the insight |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good otherwise
c07ac11
to
d8c3159
Compare
Thank you, I'm very happy to have this as soon as possible. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
While I personally think we should probably unbind GDExtension::initialize_library()
, and hence don't need docs for it, that doesn't necessarily need to hold up this PR.
This looks great!
d8c3159
to
c4d7d7c
Compare
Accepted the above suggestion |
Thanks! |
This PR fills in the class reference of GDExtension and GDExtensionManager. It also links to the existing tutorials.
I don't know what else to say.
More feedback and useful insight is necessary from actual GDExtension developers. A few of these descriptions are unfortunately still barren.