-
Notifications
You must be signed in to change notification settings - Fork 212
Naming inconsistencies #773
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
Comments
@Bromeon I like the idea of simplifying these. General thoughts
Regarding the conversions between types, is the goal to create some extension methods to help with the conversions? |
Thanks!
The same thinking applies to One practical aspect: there is no standard
Not necessarily, the conversions can be part of the type. Two things are important to me:
|
The aliases were mostly for backwards compatibility, and can be confusing to new users. It should be nice to remove them in favor of a singular |
815: Rename symbols for increased clarity r=Bromeon a=Bromeon Addressing the first few of the pending renames in #773. Changes are separated by commits. bors try Co-authored-by: Jan Haller <[email protected]>
The remaining renames can be implemented during 0.10 (with deprecation) and/or for 0.11 (with removal). |
1006: Expose RPC modes for properties r=chitoyuu a=chitoyuu This adds: - The `PropertyBuilder::with_rpc_mode` method - The `#[property(rpc = "mode")]` syntax for the NativeClass macro Close #995 1007: Deprecate specialized pool array aliases r=chitoyuu a=chitoyuu Related: #773 Co-authored-by: Chitose Yuuzaki <[email protected]>
Uh oh!
There was an error while loading. Please reload this page.
This issue collects godot-rust symbols, whose current names could be made more expressive in a future version. This includes anything: types, functions, macros, variables. It excludes generated names from the GDNative bindings, as they are not chosen by us*.
All of these are up to discussion, of course. Migration could happen step-wise: v0.10 deprecates the names and adds type aliases for the new names (or for old ones), and v0.11 removes old names.
RefInstance
->TInstance
Analogous to
Ref
andTRef
, the latter is the temporary, lifetime-bound variant of the former.RefInstance
suggests that this is a mix betweenRef
andInstance
.TypedArray
->PoolArray
Would immediately reflect that it's the Rust counterpart of GDScript's
Pool*Array
s.We need to decide if it makes sense to keep
Int32Array
andFloat32Array
around.VariantArray
->Array
(?)This one is a bit less clear: while it would match GDScript's type
Array
, the name "Array" is very general and doesn't clearly describe the purpose. On the other hand, the same problem occurs withDictionary
. However, "dictionary" is quite specific to GDScript terminology; in Rust such types are typically called "maps".Conversions between
Ref
,TRef
,Instance
,Script
etc.Some terms are used interchangeably (base/owner), while some are not related to the conversion involved (claim). This is OK to some extent, but we need to be careful that there are not too many names that need to be "learnt by heart", as that makes APIs less accessible.
Type states; e.g.
Access
->Ownership
See this comment.
Related, but planned for v0.10: #712
* Note regarding GDNative types
A lot of them have multiple capital letters, e.g.
ARVRCamera
,AudioStreamOGGVorbis
,PCKPacker
,UPNP
,WebRTCPeerConnection
and more. Would likely cause more confusion than benefit to "correct" them, add lots of manual special cases, and sometimes become obsolete in Godot 4. What needs to be checked though is why this was done for some types likeG6dofJointAxisParam
. Godot seems to useG6DOFJointAxisParam
, and GDNative apparently too. But where does the de-capitalization in godot-rust originate?The text was updated successfully, but these errors were encountered: