Skip to content

Commit 1fff463

Browse files
authored
Merge pull request #1322 from godot-rust/qol/rename-class-id
Rename `ClassName` -> `ClassId`
2 parents 62e6ec3 + 01f2cb3 commit 1fff463

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+319
-313
lines changed

check.sh

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -312,18 +312,18 @@ function compute_elapsed() {
312312
for cmd in "${cmds[@]}"; do
313313
"cmd_${cmd}" || {
314314
compute_elapsed
315-
log -ne "$RED\n====================="
316-
log -ne "\ngdext: checks FAILED."
317-
log -ne "\n=====================\n$END"
315+
log -ne "$RED\n=========================="
316+
log -ne "\ngodot-rust: checks FAILED."
317+
log -ne "\n==========================\n$END"
318318
log -ne "\nTotal duration: $elapsed.\n"
319319
exit 1
320320
}
321321
done
322322

323323
compute_elapsed
324-
log -ne "$CYAN\n========================="
325-
log -ne "\ngdext: checks SUCCESSFUL."
326-
log -ne "\n=========================\n$END"
324+
log -ne "$CYAN\n=============================="
325+
log -ne "\ngodot-rust: checks SUCCESSFUL."
326+
log -ne "\n==============================\n$END"
327327
log -ne "\nTotal duration: $elapsed.\n"
328328

329329
# If invoked with sh instead of bash, pressing Up arrow after executing `sh check.sh` may cause a `[A` to appear.

godot-codegen/src/generator/classes.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -244,11 +244,11 @@ fn make_class(class: &Class, ctx: &mut Context, view: &ApiView) -> GeneratedClas
244244
type Base = #base_ty;
245245

246246
// Code duplicated in godot-macros.
247-
fn class_name() -> ClassName {
247+
fn class_id() -> ClassId {
248248
// Optimization note: instead of lazy init, could use separate static which is manually initialized during registration.
249-
static CLASS_NAME: std::sync::OnceLock<ClassName> = std::sync::OnceLock::new();
249+
static CLASS_ID: std::sync::OnceLock<ClassId> = std::sync::OnceLock::new();
250250

251-
let name: &'static ClassName = CLASS_NAME.get_or_init(|| ClassName::__alloc_next_ascii(#class_name_cstr));
251+
let name: &'static ClassId = CLASS_ID.get_or_init(|| ClassId::__alloc_next_ascii(#class_name_cstr));
252252
*name
253253
}
254254

@@ -421,8 +421,8 @@ fn make_constructor_and_default(class: &Class, ctx: &Context) -> Construction {
421421
let class_name = class.name();
422422

423423
let godot_class_stringname = make_string_name(&class_name.godot_ty);
424-
// Note: this could use class_name() but is not yet done due to potential future lazy-load refactoring.
425-
//let class_name_obj = quote! { <Self as crate::obj::GodotClass>::class_name() };
424+
// Note: this could use class_id() but is not yet done due to potential future lazy-load refactoring.
425+
//let class_name_obj = quote! { <Self as crate::obj::GodotClass>::class_id() };
426426

427427
let (constructor, construct_doc, has_godot_default_impl);
428428
if ctx.is_singleton(class_name) {

godot-codegen/src/util.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ pub fn make_imports() -> TokenStream {
2525
quote! {
2626
use godot_ffi as sys;
2727
use crate::builtin::*;
28-
use crate::meta::{AsArg, ClassName, CowArg, InParamTuple, OutParamTuple, ParamTuple, RefArg, Signature};
28+
use crate::meta::{AsArg, ClassId, CowArg, InParamTuple, OutParamTuple, ParamTuple, RefArg, Signature};
2929
use crate::classes::native::*;
3030
use crate::classes::Object;
3131
use crate::obj::Gd;

godot-core/src/builtin/collections/array.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use crate::meta;
1717
use crate::meta::error::{ConvertError, FromGodotError, FromVariantError};
1818
use crate::meta::signed_range::SignedRange;
1919
use crate::meta::{
20-
element_godot_type_name, element_variant_type, ArrayElement, AsArg, ClassName, ElementType,
20+
element_godot_type_name, element_variant_type, ArrayElement, AsArg, ClassId, ElementType,
2121
ExtVariantType, FromGodot, GodotConvert, GodotFfiVariant, GodotType, PropertyHintInfo, RefArg,
2222
ToGodot,
2323
};
@@ -1038,7 +1038,7 @@ impl<T: ArrayElement> Array<T> {
10381038
if let (ElementType::ScriptClass(_), ElementType::Class(expected_class)) =
10391039
(&self_ty, &target_ty)
10401040
{
1041-
if let Some(actual_base_class) = self_ty.class_name() {
1041+
if let Some(actual_base_class) = self_ty.class_id() {
10421042
if actual_base_class == *expected_class {
10431043
return Ok(self);
10441044
}
@@ -1073,8 +1073,8 @@ impl<T: ArrayElement> Array<T> {
10731073
// A bit contrived because empty StringName is lazy-initialized but must also remain valid.
10741074
#[allow(unused_assignments)]
10751075
let mut empty_string_name = None;
1076-
let class_name = if let Some(class_name) = elem_ty.class_name() {
1077-
class_name.string_sys()
1076+
let class_name = if let Some(class_id) = elem_ty.class_id() {
1077+
class_id.string_sys()
10781078
} else {
10791079
empty_string_name = Some(StringName::default());
10801080
// as_ref() crucial here -- otherwise the StringName is dropped.
@@ -1297,7 +1297,7 @@ where
12971297
}
12981298

12991299
#[doc(hidden)]
1300-
fn as_node_class() -> Option<ClassName> {
1300+
fn as_node_class() -> Option<ClassId> {
13011301
PropertyHintInfo::object_as_node_class::<T>()
13021302
}
13031303
}
@@ -1315,7 +1315,7 @@ where
13151315
}
13161316

13171317
#[doc(hidden)]
1318-
fn as_node_class() -> Option<ClassName> {
1318+
fn as_node_class() -> Option<ClassId> {
13191319
PropertyHintInfo::object_as_node_class::<T>()
13201320
}
13211321
}

godot-core/src/builtin/variant/impls.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -401,7 +401,7 @@ impl GodotType for Variant {
401401
fn property_info(property_name: &str) -> PropertyInfo {
402402
PropertyInfo {
403403
variant_type: Self::VARIANT_TYPE.variant_as_nil(),
404-
class_name: Self::class_name(),
404+
class_id: Self::class_id(),
405405
property_name: StringName::from(property_name),
406406
hint_info: PropertyHintInfo::none(),
407407
usage: global::PropertyUsageFlags::DEFAULT | global::PropertyUsageFlags::NIL_IS_VARIANT,

godot-core/src/classes/class_runtime.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ use crate::builtin::{GString, StringName, Variant, VariantType};
1212
use crate::classes::{ClassDb, Object};
1313
use crate::meta::CallContext;
1414
#[cfg(debug_assertions)]
15-
use crate::meta::ClassName;
15+
use crate::meta::ClassId;
1616
use crate::obj::{bounds, Bounds, Gd, GodotClass, InstanceId, RawGd};
1717
use crate::sys;
1818

@@ -171,7 +171,7 @@ where
171171
T: GodotClass + Bounds<Declarer = bounds::DeclEngine>,
172172
{
173173
let mut obj = unsafe {
174-
let object_ptr = sys::classdb_construct_object(T::class_name().string_sys());
174+
let object_ptr = sys::classdb_construct_object(T::class_id().string_sys());
175175
Gd::<T>::from_obj_sys(object_ptr)
176176
};
177177
#[cfg(since_api = "4.4")]
@@ -202,9 +202,9 @@ pub(crate) fn ensure_object_alive(
202202
}
203203

204204
#[cfg(debug_assertions)]
205-
pub(crate) fn ensure_object_inherits(derived: ClassName, base: ClassName, instance_id: InstanceId) {
205+
pub(crate) fn ensure_object_inherits(derived: ClassId, base: ClassId, instance_id: InstanceId) {
206206
if derived == base
207-
|| base == Object::class_name() // for Object base, anything inherits by definition
207+
|| base == Object::class_id() // for Object base, anything inherits by definition
208208
|| is_derived_base_cached(derived, base)
209209
{
210210
return;
@@ -245,12 +245,12 @@ where
245245

246246
/// Checks if `derived` inherits from `base`, using a cache for _successful_ queries.
247247
#[cfg(debug_assertions)]
248-
fn is_derived_base_cached(derived: ClassName, base: ClassName) -> bool {
248+
fn is_derived_base_cached(derived: ClassId, base: ClassId) -> bool {
249249
use std::collections::HashSet;
250250

251251
use sys::Global;
252252

253-
static CACHE: Global<HashSet<(ClassName, ClassName)>> = Global::default();
253+
static CACHE: Global<HashSet<(ClassId, ClassId)>> = Global::default();
254254

255255
let mut cache = CACHE.lock();
256256
let key = (derived, base);

godot-core/src/classes/manual_extensions.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ impl Node {
3232
self.try_get_node_as(path).unwrap_or_else(|| {
3333
panic!(
3434
"There is no node of type {ty} at path `{path}`",
35-
ty = T::class_name()
35+
ty = T::class_id()
3636
)
3737
})
3838
}
@@ -66,7 +66,7 @@ impl PackedScene {
6666
T: Inherits<Node>,
6767
{
6868
self.try_instantiate_as::<T>()
69-
.unwrap_or_else(|| panic!("Failed to instantiate {to}", to = T::class_name()))
69+
.unwrap_or_else(|| panic!("Failed to instantiate {to}", to = T::class_id()))
7070
}
7171

7272
/// Instantiates the scene as type `T` (fallible).

godot-core/src/docs.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
use std::collections::HashMap;
99

10-
use crate::meta::ClassName;
10+
use crate::meta::ClassId;
1111
use crate::registry::plugin::{ITraitImpl, InherentImpl, PluginItem, Struct};
1212

1313
/// Created for documentation on
@@ -75,7 +75,7 @@ struct DocPieces {
7575
/// strings of not-yet-parented XML tags (or empty string if no method has been documented).
7676
#[doc(hidden)]
7777
pub fn gather_xml_docs() -> impl Iterator<Item = String> {
78-
let mut map = HashMap::<ClassName, DocPieces>::new();
78+
let mut map = HashMap::<ClassId, DocPieces>::new();
7979
crate::private::iterate_plugins(|x| {
8080
let class_name = x.class_name;
8181

0 commit comments

Comments
 (0)